69 lines
1.8 KiB
YAML
69 lines
1.8 KiB
YAML
name: historical-digital-me
|
|
|
|
services:
|
|
mongo:
|
|
image: mongo:7-jammy
|
|
restart: unless-stopped
|
|
environment:
|
|
MONGO_INITDB_DATABASE: ${MONGO_DB:-digital_me_local}
|
|
volumes:
|
|
- mongo_data:/data/db
|
|
healthcheck:
|
|
test: ["CMD", "mongosh", "--quiet", "--eval", "db.adminCommand('ping').ok"]
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 10
|
|
start_period: 20s
|
|
|
|
backend:
|
|
build:
|
|
context: ./digital-me-backend
|
|
dockerfile: Dockerfile
|
|
restart: unless-stopped
|
|
environment:
|
|
PORT: 3701
|
|
NODE_ENV: development
|
|
EDITION: ${EDITION:-both}
|
|
PUBLIC_URL: ${PUBLIC_URL:-http://localhost:8080}
|
|
CORS_ORIGINS: ${CORS_ORIGINS:-http://localhost:8080}
|
|
WEB_BASE_URL: ${WEB_BASE_URL:-http://localhost:8080}
|
|
MONGO_URI: mongodb://mongo:27017
|
|
MONGO_DB: ${MONGO_DB:-digital_me_local}
|
|
JWT_SECRET: ${JWT_SECRET:-local-docker-only-change-before-ecs-2026}
|
|
JWT_EXPIRES: ${JWT_EXPIRES:-7d}
|
|
STORAGE_DRIVER: local
|
|
STORAGE_LOCAL_DIR: /app/data/uploads
|
|
SMS_PROVIDER: stub
|
|
ALLOW_STUB_LOGIN: "true"
|
|
PAYMENT_PROVIDER: stub
|
|
STORE_PROVIDER: stub
|
|
LLM_OVERSEAS_FALLBACK: "off"
|
|
ALLOW_OVERSEAS_EGRESS: "false"
|
|
DASHSCOPE_API_KEY: ${DASHSCOPE_API_KEY:-}
|
|
ports:
|
|
- "127.0.0.1:${BACKEND_PORT:-3701}:3701"
|
|
volumes:
|
|
- backend_data:/app/data
|
|
depends_on:
|
|
mongo:
|
|
condition: service_healthy
|
|
init: true
|
|
|
|
web:
|
|
build:
|
|
context: ./digital-me-web
|
|
dockerfile: Dockerfile
|
|
args:
|
|
VITE_API_BASE_URL: ${VITE_API_BASE_URL:-same-origin}
|
|
VITE_EDITION: ${EDITION:-both}
|
|
restart: unless-stopped
|
|
ports:
|
|
- "${WEB_BIND_ADDRESS:-0.0.0.0}:${WEB_PORT:-8080}:80"
|
|
depends_on:
|
|
backend:
|
|
condition: service_healthy
|
|
|
|
volumes:
|
|
mongo_data:
|
|
backend_data:
|