fix(deploy): drop broken migrate service, add defaults for missing env vars

migrate service used TypeScript source not available in standalone image.
Migrations must be run separately (pnpm db:migrate against prod DB).
Added defaults: POSTGRES_DB=epicure, POSTGRES_USER=epicure, MINIO_ROOT_USER=minioadmin.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Arnaud
2026-07-01 13:59:22 +02:00
parent b1ccae5368
commit 16f885fedb
+5 -19
View File
@@ -3,8 +3,8 @@ services:
image: postgres:17-alpine image: postgres:17-alpine
restart: unless-stopped restart: unless-stopped
environment: environment:
POSTGRES_DB: ${POSTGRES_DB} POSTGRES_DB: ${POSTGRES_DB:-epicure}
POSTGRES_USER: ${POSTGRES_USER} POSTGRES_USER: ${POSTGRES_USER:-epicure}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
volumes: volumes:
- postgres_data:/var/lib/postgresql/data - postgres_data:/var/lib/postgresql/data
@@ -36,7 +36,7 @@ services:
image: minio/minio:latest image: minio/minio:latest
restart: unless-stopped restart: unless-stopped
environment: environment:
MINIO_ROOT_USER: ${MINIO_ROOT_USER} MINIO_ROOT_USER: ${MINIO_ROOT_USER:-minioadmin}
MINIO_ROOT_PASSWORD: ${MINIO_ROOT_PASSWORD} MINIO_ROOT_PASSWORD: ${MINIO_ROOT_PASSWORD}
volumes: volumes:
- minio_data:/data - minio_data:/data
@@ -50,28 +50,16 @@ services:
networks: networks:
- internal - internal
migrate:
image: epicure-web:latest
command: ["node", "-e", "import('@epicure/db').then(m => m.migrate())"]
environment:
DATABASE_URL: postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@postgres:5432/${POSTGRES_DB}
depends_on:
postgres:
condition: service_healthy
restart: on-failure
networks:
- internal
web: web:
image: epicure-web:latest image: epicure-web:latest
restart: unless-stopped restart: unless-stopped
ports: ports:
- "${APP_PORT:-3000}:3000" - "${APP_PORT:-3000}:3000"
environment: environment:
DATABASE_URL: postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@postgres:5432/${POSTGRES_DB} DATABASE_URL: postgresql://${POSTGRES_USER:-epicure}:${POSTGRES_PASSWORD}@postgres:5432/${POSTGRES_DB:-epicure}
REDIS_URL: redis://:${REDIS_PASSWORD}@redis:6379 REDIS_URL: redis://:${REDIS_PASSWORD}@redis:6379
STORAGE_ENDPOINT: http://minio:9000 STORAGE_ENDPOINT: http://minio:9000
STORAGE_ACCESS_KEY: ${MINIO_ROOT_USER} STORAGE_ACCESS_KEY: ${MINIO_ROOT_USER:-minioadmin}
STORAGE_SECRET_KEY: ${MINIO_ROOT_PASSWORD} STORAGE_SECRET_KEY: ${MINIO_ROOT_PASSWORD}
STORAGE_BUCKET: epicure-uploads STORAGE_BUCKET: epicure-uploads
BETTER_AUTH_SECRET: ${BETTER_AUTH_SECRET} BETTER_AUTH_SECRET: ${BETTER_AUTH_SECRET}
@@ -86,8 +74,6 @@ services:
condition: service_healthy condition: service_healthy
minio: minio:
condition: service_healthy condition: service_healthy
migrate:
condition: service_completed_successfully
networks: networks:
- internal - internal