simedkom/Dockerfile
Muhammad Alfin Afif Al Farizi Farham 151ea8d58a Update 4 files
- /.gitignore
- /Dockerfile
- /docker-compose.yml
- /.gitlab-ci.yml
2026-02-04 09:50:10 +07:00

53 lines
1.1 KiB
Docker

### ===============================
### STAGE 1: FRONTEND BUILD
### ===============================
FROM node:20-alpine AS frontend
WORKDIR /app
COPY package*.json ./
RUN npm install
COPY resources resources
COPY vite.config.* .
RUN npm run build
### ===============================
### STAGE 2: PHP / LARAVEL
### ===============================
FROM dunglas/frankenphp:1-php8.3
ENV SERVER_NAME=":80"
WORKDIR /app
# System deps
RUN apt-get update && apt-get install -y \
libpng-dev \
libjpeg-dev \
libfreetype6-dev \
libzip-dev \
libicu-dev \
pkg-config \
&& docker-php-ext-configure gd --with-freetype --with-jpeg \
&& docker-php-ext-install \
gd pdo pdo_mysql zip bcmath intl exif \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
# Composer
COPY composer.json composer.lock ./
COPY --from=composer:latest /usr/bin/composer /usr/bin/composer
RUN composer install --no-dev --optimize-autoloader --no-interaction
# App source
COPY . .
# COPY HASIL VITE BUILD
COPY --from=frontend /app/public/build public/build
RUN php artisan config:clear \
&& php artisan view:clear \
&& php artisan route:clear