geekai/deploy/docker-compose.yaml
2024-03-28 15:00:53 +08:00

81 lines
2.1 KiB
YAML

version: '3'
services:
# mysql
chatgpt-plus-mysql:
image: mysql:8.0.33
container_name: chatgpt-plus-mysql
command: --default-authentication-plugin=mysql_native_password
restart: always
environment:
- MYSQL_ROOT_PASSWORD=12345678
ports:
- "3307:3306"
volumes :
- ./conf/mysql/my.cnf:/etc/mysql/my.cnf
- ./data/mysql/data:/var/lib/mysql
- ./logs/mysql:/var/log/mysql
- ./data/mysql/init.d:/docker-entrypoint-initdb.d/
# redis
chatgpt-plus-redis:
image: redis:6.0.16
restart: always
container_name: chatgpt-plus-redis
command: redis-server --requirepass 12345678
volumes :
- ./data/redis:/data
ports:
- "6380:6379"
xxl-job-admin:
container_name: xxl-job-admin
image: xuxueli/xxl-job-admin:2.4.0
restart: always
ports:
- "8081:8080"
environment:
- PARAMS=--spring.config.location=/application.properties
volumes:
- ./logs/xxl-job:/data/applogs
- ./conf/xxl-job/application.properties:/application.properties
depends_on:
- chatgpt-plus-mysql
# 后端 API 程序
chatgpt-plus-api:
image: registry.cn-shenzhen.aliyuncs.com/geekmaster/chatgpt-plus-api:v4.0.0-amd64
container_name: chatgpt-plus-api
restart: always
depends_on:
- chatgpt-plus-mysql
- chatgpt-plus-redis
- xxl-job-admin
environment:
- DEBUG=false
- LOG_LEVEL=info
- CONFIG_FILE=config.toml
ports:
- "5678:5678"
- "9999:9999"
volumes:
- /usr/share/zoneinfo/Asia/Shanghai:/etc/localtime
- ./conf/config.toml:/var/www/app/config.toml
- ./logs/app:/var/www/app/logs
- ./static:/var/www/app/static
# 前端应用
chatgpt-plus-web:
image: registry.cn-shenzhen.aliyuncs.com/geekmaster/chatgpt-plus-web:v4.0.0-amd64
container_name: chatgpt-plus-web
restart: always
depends_on:
- chatgpt-plus-api
ports:
- "8080:8080"
volumes:
- ./logs/nginx:/var/log/nginx
- ./conf/nginx/conf.d:/etc/nginx/conf.d
- ./conf/nginx/nginx.conf:/etc/nginx/nginx.conf
- ./conf/nginx/ssl:/etc/nginx/ssl