62 lines
1.9 KiB
YAML
62 lines
1.9 KiB
YAML
|
|
version: '3.8'
|
|||
|
|
|
|||
|
|
services:
|
|||
|
|
app:
|
|||
|
|
# 使用测试镜像(pre-release)
|
|||
|
|
image: wrbug/polyhermes:test
|
|||
|
|
container_name: polyhermes-test
|
|||
|
|
ports:
|
|||
|
|
- "${SERVER_PORT:-8080}:80" # 使用不同端口避免冲突
|
|||
|
|
environment:
|
|||
|
|
- TZ=${TZ:-Asia/Shanghai}
|
|||
|
|
- SPRING_PROFILES_ACTIVE=test # 使用测试 profile
|
|||
|
|
- DB_URL=${DB_URL:-jdbc:mysql://mysql-test:3306/polyhermes_test?useSSL=false&serverTimezone=UTC&characterEncoding=utf8&allowPublicKeyRetrieval=true}
|
|||
|
|
- DB_USERNAME=${DB_USERNAME:-root}
|
|||
|
|
- DB_PASSWORD=${DB_PASSWORD:-}
|
|||
|
|
- SERVER_PORT=8000
|
|||
|
|
- JWT_SECRET=${JWT_SECRET:-test-jwt-secret-key-for-testing-only}
|
|||
|
|
- ADMIN_RESET_PASSWORD_KEY=${ADMIN_RESET_PASSWORD_KEY:-test-reset-key-for-testing-only}
|
|||
|
|
- LOG_LEVEL_ROOT=DEBUG
|
|||
|
|
- LOG_LEVEL_APP=DEBUG
|
|||
|
|
# 【测试环境】允许检测 pre-release 版本
|
|||
|
|
- ALLOW_PRERELEASE=true
|
|||
|
|
- GITHUB_REPO=${GITHUB_REPO:-WrBug/PolyHermes}
|
|||
|
|
volumes:
|
|||
|
|
- /etc/localtime:/etc/localtime:ro
|
|||
|
|
depends_on:
|
|||
|
|
mysql-test:
|
|||
|
|
condition: service_healthy
|
|||
|
|
restart: unless-stopped
|
|||
|
|
networks:
|
|||
|
|
- polyhermes-test-network
|
|||
|
|
|
|||
|
|
mysql-test:
|
|||
|
|
image: mysql:8.2
|
|||
|
|
container_name: polyhermes-mysql-test
|
|||
|
|
ports:
|
|||
|
|
- "${MYSQL_PORT:-3308}:3306" # 使用不同端口
|
|||
|
|
environment:
|
|||
|
|
- TZ=${TZ:-Asia/Shanghai}
|
|||
|
|
- MYSQL_ROOT_PASSWORD=${DB_PASSWORD:-testpassword}
|
|||
|
|
- MYSQL_DATABASE=polyhermes_test
|
|||
|
|
- MYSQL_CHARACTER_SET_SERVER=utf8mb4
|
|||
|
|
- MYSQL_COLLATION_SERVER=utf8mb4_unicode_ci
|
|||
|
|
volumes:
|
|||
|
|
- mysql-test-data:/var/lib/mysql
|
|||
|
|
- /etc/localtime:/etc/localtime:ro
|
|||
|
|
healthcheck:
|
|||
|
|
test: ["CMD", "mysqladmin", "ping", "-h", "localhost", "-u", "root", "-p${DB_PASSWORD:-testpassword}"]
|
|||
|
|
interval: 10s
|
|||
|
|
timeout: 5s
|
|||
|
|
retries: 5
|
|||
|
|
restart: unless-stopped
|
|||
|
|
networks:
|
|||
|
|
- polyhermes-test-network
|
|||
|
|
|
|||
|
|
volumes:
|
|||
|
|
mysql-test-data:
|
|||
|
|
|
|||
|
|
networks:
|
|||
|
|
polyhermes-test-network:
|
|||
|
|
driver: bridge
|