services: new-api: image: calciumion/new-api:latest container_name: new-api restart: always command: --log-dir /app/logs ports: - "3000:3000" volumes: - ./data:/data - ./logs:/app/logs environment: SQL_DSN: ${SQL_DSN:?SQL_DSN is required} REDIS_CONN_STRING: ${REDIS_CONN_STRING:?REDIS_CONN_STRING is required} TZ: ${TZ:-Asia/Shanghai} ERROR_LOG_ENABLED: ${ERROR_LOG_ENABLED:-true} BATCH_UPDATE_ENABLED: ${BATCH_UPDATE_ENABLED:-true} networks: - default - infra-shared healthcheck: test: ["CMD-SHELL", "wget -q -O - http://localhost:3000/api/status | grep -o '\"success\":\\s*true' || exit 1"] interval: 30s timeout: 10s retries: 3 networks: infra-shared: external: true name: infra-shared