Files
Arch1Panel/apps/new-api/0.8.7.5-allinone/docker-compose.yml
2025-07-26 15:20:59 +08:00

60 lines
2.0 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
services:
new-api:
image: calciumion/new-api:v0.8.7.5
container_name: ${CONTAINER_NAME}
restart: always
ports:
- ${PANEL_APP_PORT_HTTP}:3000
networks:
- 1panel-network
command: --log-dir /app/logs
volumes:
- ./data:/data
- ./logs:/app/logs
environment:
- SQL_DSN=root:${PANEL_DB_ROOT_PASSWORD}@tcp(${CONTAINER_NAME}-mysql:3306)/${PANEL_DB_NAME} # 修改此行,或注释掉以使用 SQLite 作为数据库
- TZ=Asia/Shanghai
- REDIS_CONN_STRING=redis://${CONTAINER_NAME}-redis
- ERROR_LOG_ENABLED=true # 是否启用错误日志记录
# - STREAMING_TIMEOUT=120 # 流模式无响应超时时间单位秒默认120秒如果出现空补全可以尝试改为更大值
# - SESSION_SECRET=random_string # 多机部署时设置,必须修改这个随机字符串!!!!!!!
# - NODE_TYPE=slave # Uncomment for slave node in multi-node deployment
# - SYNC_FREQUENCY=60 # Uncomment if regular database syncing is needed
# - FRONTEND_BASE_URL=https://openai.justsong.cn # Uncomment for multi-node deployment with front-end URL
depends_on:
- redis
- mysql
healthcheck:
test: ["CMD-SHELL", "wget -q -O - http://localhost:3000/api/status | grep -o '\"success\":\\s*true' | awk -F: '{print $$2}'"]
interval: 30s
timeout: 10s
retries: 3
labels:
createdBy: "Apps"
mysql:
image: mysql:8.2
container_name: ${CONTAINER_NAME}-mysql
restart: always
volumes:
- mysql_data:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=${PANEL_DB_ROOT_PASSWORD} # MySQL root用户密码
- MYSQL_DATABASE=${PANEL_DB_NAME} # 创建的数据库名
networks:
- 1panel-network
redis:
image: redis:latest
container_name: ${CONTAINER_NAME}-redis
restart: always
networks:
- 1panel-network
volumes:
mysql_data:
networks:
1panel-network:
external: true