Files
guanwang/compose.yml

38 lines
999 B
YAML

name: huiyu-official-site
services:
web:
build:
context: .
dockerfile: Dockerfile
image: huiyu-official-site:${IMAGE_TAG:-phase1}
init: true
restart: unless-stopped
ports:
- "${APP_BIND_IP:-127.0.0.1}:${APP_PORT:-3000}:3000"
env_file:
- .env.docker
environment:
NUXT_DATABASE_PATH: /app/data/db/huiyu.sqlite
NUXT_PUBLIC_SITE_URL: ${SITE_URL:-http://localhost:3000}
APP_VERSION: ${IMAGE_TAG:-phase1}
volumes:
- huiyu_data:/app/data
- ${BACKUP_HOST_DIR:-./backups}:/app/offsite-backups
read_only: true
tmpfs:
- /tmp:size=64m
security_opt:
- no-new-privileges:true
stop_grace_period: 20s
healthcheck:
test: ["CMD", "node", "-e", "fetch('http://127.0.0.1:3000/api/health').then(r=>{if(!r.ok)process.exit(1)}).catch(()=>process.exit(1))"]
interval: 10s
timeout: 5s
retries: 6
start_period: 20s
volumes:
huiyu_data:
name: huiyu_official_site_data