53 lines
1.5 KiB
YAML
53 lines
1.5 KiB
YAML
services:
|
|
mongodb:
|
|
image: mongo:7
|
|
restart: unless-stopped
|
|
environment:
|
|
MONGO_INITDB_ROOT_USERNAME: ${MONGO_USER:-adam}
|
|
MONGO_INITDB_ROOT_PASSWORD: ${MONGO_PASSWORD}
|
|
MONGO_INITDB_DATABASE: adam-acs
|
|
volumes:
|
|
- mongo_data:/data/db
|
|
healthcheck:
|
|
test: ["CMD", "mongosh", "--eval", "db.adminCommand('ping')"]
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 5
|
|
|
|
app:
|
|
image: 192.168.1.39:3000/stude12/adam-acs:latest
|
|
restart: unless-stopped
|
|
ports:
|
|
- "${APP_PORT:-8080}:8080"
|
|
environment:
|
|
NODE_ENV: production
|
|
PORT: 8080
|
|
HOST: 0.0.0.0
|
|
MONGODB_URI: mongodb://${MONGO_USER:-adam}:${MONGO_PASSWORD}@mongodb:27017/adam-acs?authSource=admin
|
|
MONGODB_DB_NAME: adam-acs
|
|
APP_KEY: ${APP_KEY}
|
|
APP_URL: ${APP_URL:-http://localhost:8080}
|
|
SESSION_DRIVER: cookie
|
|
LOG_LEVEL: ${LOG_LEVEL:-info}
|
|
HASH_KEY: ${HASH_KEY}
|
|
WEBUI_USERNAME: ${WEBUI_USERNAME:-Admin}
|
|
WEBUI_PASSWORD: ${WEBUI_PASSWORD}
|
|
API_KEY: ${API_KEY}
|
|
depends_on:
|
|
mongodb:
|
|
condition: service_healthy
|
|
volumes:
|
|
- app_tr069_data:/app/data
|
|
- app_tr069_logs:/app/logs/tr069
|
|
healthcheck:
|
|
test: ["CMD", "node", "-e", "fetch('http://localhost:8080/api/v1/checklife').then(r=>{process.exit(r.ok?0:1)}).catch(()=>process.exit(1))"]
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 10
|
|
start_period: 15s
|
|
|
|
volumes:
|
|
mongo_data:
|
|
app_tr069_data:
|
|
app_tr069_logs:
|