Files
Docker_Compose/4600Pro/yuvomi/docker-compose.yaml
T
2026-07-27 10:30:48 +08:00

38 lines
1.8 KiB
YAML

services:
yuvomi:
image: ghcr.io/ulsklyc/yuvomi:latest
build: . # optional: use --build to build locally instead
container_name: yuvomi
restart: unless-stopped
ports:
# Host-Port aus .env (OIKOS_HTTP_PORT); App im Container bleibt auf 3000.
- "0.0.0.0:${OIKOS_HTTP_PORT:-3000}:3000"
volumes:
- ${DATA_DIR:-./data}:/data
- ${BACKUP_DIR:-./backups}:/backups
# Drop Yuvomi modules into ./modules, or set MODULES_DIR=/path/to/modules.
- ${MODULES_DIR:-./modules}:/app/modules
# Optional local documents folder: mount a host directory to /documents inside the container
- ${DOCUMENT_STORAGE_LOCAL_DIR:-./documents}:/documents
env_file:
- .env
environment:
- NODE_ENV=production
- DB_PATH=${DB_PATH:-/data/yuvomi.db}
- BACKUP_DIR=${BACKUP_DIR:-./backups}
# Local document storage (optional): set to true to store uploaded documents on the mounted /documents folder.
- DOCUMENT_STORAGE_LOCAL_ENABLED=${DOCUMENT_STORAGE_LOCAL_ENABLED:-false}
- DOCUMENT_STORAGE_LOCAL_PATH=${DOCUMENT_STORAGE_LOCAL_PATH:-/documents}
# Secure cookies come from .env (the installer sets them):
# - Reverse proxy + HTTPS → SESSION_SECURE=true, TRUST_PROXY=1
# - Direct HTTP access → SESSION_SECURE=false, TRUST_PROXY=loopback
# Default when unset (e.g. bare `docker compose up` without .env): false,
# so direct HTTP login keeps working out of the box.
- SESSION_SECURE=${SESSION_SECURE:-false}
healthcheck:
test: ["CMD", "node", "-e", "require('http').get('http://localhost:3000/health', r => process.exit(r.statusCode === 200 ? 0 : 1))"]
interval: 30s
timeout: 10s
retries: 3
start_period: 10s