diff --git a/.dockerignore b/.dockerignore index 7b1a025..8d18c4d 100644 --- a/.dockerignore +++ b/.dockerignore @@ -7,3 +7,4 @@ storage/framework/cache/data .env .env.* public/storage +public/build diff --git a/Dockerfile b/Dockerfile index cf61f22..6ffc520 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM dunglas/frankenphp:php8.4-alpine +FROM dunglas/frankenphp:php8.4-alpine AS php WORKDIR /app @@ -31,6 +31,24 @@ COPY . . RUN composer dump-autoload --optimize +FROM node:22-alpine AS frontend + +WORKDIR /app + +COPY package.json package-lock.json ./ +RUN npm ci + +COPY . . +COPY --from=php /app/vendor ./vendor + +RUN npm run build + + +FROM php AS production + +COPY --from=frontend /app/public/build ./public/build + + RUN mkdir -p \ storage/app/public \ diff --git a/docker-compose.prod.yml b/docker-compose.prod.yml index 711d684..102925f 100644 --- a/docker-compose.prod.yml +++ b/docker-compose.prod.yml @@ -56,6 +56,8 @@ services: horizon: <<: *app-service container_name: daily-meal-api-horizon + healthcheck: + disable: true depends_on: app: condition: service_healthy @@ -64,6 +66,8 @@ services: scheduler: <<: *app-service container_name: daily-meal-api-scheduler + healthcheck: + disable: true depends_on: app: condition: service_healthy