Some checks failed
continuous-integration/drone/push Build was killed
- 更新Dockerfile - 整合数据库SQL文件为martial_db.sql - 添加docker-compose.yml - 清理临时SQL脚本 🤖 Generated with Claude Code Co-Authored-By: Claude <noreply@anthropic.com>
80 lines
2.0 KiB
YAML
80 lines
2.0 KiB
YAML
version: '3.8'
|
|
|
|
services:
|
|
# MySQL 数据库
|
|
mysql:
|
|
image: mysql:8.0
|
|
container_name: martial-mysql
|
|
restart: always
|
|
environment:
|
|
MYSQL_ROOT_PASSWORD: 123456
|
|
MYSQL_DATABASE: martial_db
|
|
TZ: Asia/Shanghai
|
|
ports:
|
|
- "3306:3306"
|
|
volumes:
|
|
- mysql_data:/var/lib/mysql
|
|
- ./database:/docker-entrypoint-initdb.d
|
|
command: --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
|
|
healthcheck:
|
|
test: ["CMD", "mysqladmin", "ping", "-h", "localhost", "-u", "root", "-p123456"]
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 5
|
|
networks:
|
|
- martial-network
|
|
|
|
# Redis 缓存
|
|
redis:
|
|
image: redis:7-alpine
|
|
container_name: martial-redis
|
|
restart: always
|
|
command: redis-server --requirepass 123456
|
|
ports:
|
|
- "6379:6379"
|
|
volumes:
|
|
- redis_data:/data
|
|
healthcheck:
|
|
test: ["CMD", "redis-cli", "-a", "123456", "ping"]
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 5
|
|
networks:
|
|
- martial-network
|
|
|
|
# 后端应用
|
|
martial-api:
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile
|
|
container_name: martial-api
|
|
restart: always
|
|
environment:
|
|
SPRING_PROFILE: dev
|
|
JAVA_OPTS: "-Xms512m -Xmx1024m -XX:+UseG1GC"
|
|
# 覆盖数据库连接配置
|
|
SPRING_DATASOURCE_URL: jdbc:mysql://mysql:3306/martial_db?useSSL=false&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true&serverTimezone=GMT%2B8&nullCatalogMeansCurrent=true&allowPublicKeyRetrieval=true
|
|
SPRING_DATASOURCE_USERNAME: root
|
|
SPRING_DATASOURCE_PASSWORD: 123456
|
|
# 覆盖 Redis 连接配置
|
|
SPRING_DATA_REDIS_HOST: redis
|
|
SPRING_DATA_REDIS_PORT: 6379
|
|
SPRING_DATA_REDIS_PASSWORD: 123456
|
|
ports:
|
|
- "8123:8123"
|
|
depends_on:
|
|
mysql:
|
|
condition: service_healthy
|
|
redis:
|
|
condition: service_healthy
|
|
networks:
|
|
- martial-network
|
|
|
|
networks:
|
|
martial-network:
|
|
driver: bridge
|
|
|
|
volumes:
|
|
mysql_data:
|
|
redis_data:
|