mirror of
https://github.com/Sagit-chu/flvx.git
synced 2026-09-28 23:56:36 +08:00
86 lines
2.0 KiB
YAML
86 lines
2.0 KiB
YAML
version: "3.8"
|
|
|
|
services:
|
|
mysql:
|
|
image: mysql:8.0
|
|
container_name: gost-mysql
|
|
restart: unless-stopped
|
|
environment:
|
|
MYSQL_ROOT_PASSWORD: ${DB_PASSWORD}
|
|
MYSQL_DATABASE: ${DB_NAME}
|
|
MYSQL_USER: ${DB_USER}
|
|
MYSQL_PASSWORD: ${DB_PASSWORD}
|
|
TZ: Asia/Shanghai
|
|
ports:
|
|
- "127.0.0.1:3306:3306"
|
|
volumes:
|
|
- mysql_data:/var/lib/mysql
|
|
- ./gost.sql:/docker-entrypoint-initdb.d/init.sql:ro
|
|
command: >
|
|
--default-authentication-plugin=mysql_native_password
|
|
--character-set-server=utf8mb4
|
|
--collation-server=utf8mb4_unicode_ci
|
|
--max_connections=1000
|
|
--innodb_buffer_pool_size=256M
|
|
networks:
|
|
- gost-network
|
|
healthcheck:
|
|
test: ["CMD", "mysqladmin", "ping", "-h", "localhost"]
|
|
timeout: 10s
|
|
retries: 10
|
|
|
|
backend:
|
|
image: bqlpfy/springboot-backend:latest
|
|
container_name: springboot-backend
|
|
restart: unless-stopped
|
|
environment:
|
|
DB_HOST: mysql
|
|
DB_NAME: ${DB_NAME}
|
|
DB_USER: ${DB_USER}
|
|
DB_PASSWORD: ${DB_PASSWORD}
|
|
JWT_SECRET: ${JWT_SECRET}
|
|
LOG_DIR: /app/logs
|
|
SERVER_ADDR: ${SERVER_HOST}
|
|
JAVA_OPTS: "-Xms256m -Xmx512m -Dfile.encoding=UTF-8 -Duser.timezone=Asia/Shanghai"
|
|
ports:
|
|
- "6365:6365"
|
|
volumes:
|
|
- backend_logs:/app/logs
|
|
depends_on:
|
|
mysql:
|
|
condition: service_healthy
|
|
networks:
|
|
- gost-network
|
|
healthcheck:
|
|
test: ["CMD", "sh", "-c", "wget --no-verbose --tries=1 --spider http://localhost:6365/flow/test || exit 1"]
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 5
|
|
start_period: 90s
|
|
|
|
frontend:
|
|
image: bqlpfy/vue-frontend:latest
|
|
container_name: vue-frontend
|
|
restart: unless-stopped
|
|
ports:
|
|
- "80:80"
|
|
depends_on:
|
|
backend:
|
|
condition: service_healthy
|
|
networks:
|
|
- gost-network
|
|
|
|
|
|
volumes:
|
|
mysql_data:
|
|
driver: local
|
|
backend_logs:
|
|
driver: local
|
|
|
|
|
|
networks:
|
|
gost-network:
|
|
driver: bridge
|
|
ipam:
|
|
config:
|
|
- subnet: 172.20.0.0/16 |