Files
metapi/docker/docker-compose.yml

34 lines
1.3 KiB
YAML

services:
metapi:
image: 1467078763/metapi:latest
ports:
- "127.0.0.1:${PORT:-4000}:${PORT:-4000}"
volumes:
- ./data:/app/data
- ./runtime:/app/runtime
environment:
AUTH_TOKEN: ${AUTH_TOKEN:?AUTH_TOKEN is required}
PROXY_TOKEN: ${PROXY_TOKEN:?PROXY_TOKEN is required}
CHECKIN_CRON: "${CHECKIN_CRON:-0 8 * * *}"
BALANCE_REFRESH_CRON: "${BALANCE_REFRESH_CRON:-0 * * * *}"
PORT: ${PORT:-4000}
DATA_DIR: /app/data
UPDATE_CENTER_RUNTIME_DIR: /app/runtime
UPDATE_CENTER_RUNTIME_PERSISTENT: "true"
TZ: ${TZ:-Asia/Shanghai}
NOTIFY_COOLDOWN_SEC: ${NOTIFY_COOLDOWN_SEC:-300}
ADMIN_IP_ALLOWLIST: "${ADMIN_IP_ALLOWLIST:-}"
SYSTEM_PROXY_URL: "${SYSTEM_PROXY_URL:-}"
TELEGRAM_ENABLED: ${TELEGRAM_ENABLED:-false}
TELEGRAM_BOT_TOKEN: "${TELEGRAM_BOT_TOKEN:-}"
TELEGRAM_CHAT_ID: "${TELEGRAM_CHAT_ID:-}"
TELEGRAM_API_BASE_URL: "${TELEGRAM_API_BASE_URL:-}"
TELEGRAM_MESSAGE_THREAD_ID: "${TELEGRAM_MESSAGE_THREAD_ID:-}"
TELEGRAM_USE_SYSTEM_PROXY: ${TELEGRAM_USE_SYSTEM_PROXY:-false}
restart: unless-stopped
healthcheck:
test: ["CMD", "node", "-e", "fetch('http://127.0.0.1:' + (process.env.PORT || 4000) + '/healthz').then(r => process.exit(r.ok ? 0 : 1)).catch(() => process.exit(1))"]
interval: 30s
timeout: 5s
retries: 3