45 lines
1.3 KiB
YAML
45 lines
1.3 KiB
YAML
services:
|
|
sori-studio:
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile
|
|
container_name: sori-studio
|
|
env_file:
|
|
- ${ENV_FILE:-.env.production}
|
|
ports:
|
|
- "${APP_PORT:-43080}:3000"
|
|
volumes:
|
|
- ./public/uploads:/app/public/uploads
|
|
depends_on:
|
|
- sori-studio-db
|
|
networks:
|
|
- sori-studio-network
|
|
restart: unless-stopped
|
|
|
|
sori-studio-db:
|
|
image: postgres:16-alpine
|
|
container_name: sori-studio-db
|
|
env_file:
|
|
- ${ENV_FILE:-.env.production}
|
|
ports:
|
|
- "${DB_BIND_ADDRESS:-127.0.0.1}:${DB_PORT:-43081}:5432"
|
|
volumes:
|
|
- sori-studio-postgres:/var/lib/postgresql/data
|
|
# NAS 등: 호스트 db/migrations 가 다른 UID만 읽을 수 있으면 컨테이너에서 Permission denied → DB 재시작 루프. 프로젝트 루트에서 chmod -R a+rX db/migrations 및 상위 경로 통과 권한 확인.
|
|
- ./db/migrations:/docker-entrypoint-initdb.d:ro
|
|
networks:
|
|
- sori-studio-network
|
|
restart: unless-stopped
|
|
|
|
volumes:
|
|
sori-studio-postgres:
|
|
name: ${POSTGRES_VOLUME_NAME:-soristudio_sori-studio-postgres}
|
|
external: ${POSTGRES_VOLUME_EXTERNAL:-true}
|
|
|
|
networks:
|
|
sori-studio-network:
|
|
driver: bridge
|
|
ipam:
|
|
config:
|
|
- subnet: ${DOCKER_SUBNET:-10.250.50.0/24}
|