Files
wiki/qModel/docker/docker-compose-base.yml
T
2026-05-14 16:56:48 +08:00

68 lines
1.9 KiB
YAML

version: "1.0.1"
services:
redis:
privileged: true
image: redis:6-alpine
profiles: ["all","local"]
env_file: .env
restart: always
environment:
REDISCLI_AUTH: ${REDIS_PASSWORD:-J98%FHF#9h@e88h9fre9}
# volumes:
# # Mount the redis data directory to the container.
# - ./redis/data:/data
# Set the redis password when startup redis server.
command: redis-server --requirepass ${REDIS_PASSWORD:-J98%FHF#9h@e88h9fre9}
ports:
- "${EXPOSE_REDIS_PORT:-6379}:6379"
healthcheck:
test: [ 'CMD', 'redis-cli', 'ping' ]
networks:
- qmodel_net
nginx:
privileged: true
image: nginx:1.24.0
restart: always
profiles: [ "all" ]
env_file: .env
ports:
- '${EXPOSE_NGINX_PORT:-80}:${NGINX_PORT:-80}'
networks:
- qmodel_net
volumes:
- ./nginx/dist:/usr/share/nginx
- ./nginx/logs:/var/log/nginx
- ./nginx/nginx.conf:/etc/nginx/nginx.conf:ro
- ./nginx/sites/:/etc/nginx/http_vhost/:ro
dm8:
image: ${QMODEL_HUB}/dm8:mixed
profiles: [ "all", "schema","local" ,"qmodel-db"]
env_file: .env
privileged: true
hostname: dm8
restart: always
ports:
- "35236:5236"
volumes:
- ./database/dm8/init-qmodel.sql:/home/dmdba/initdata/init-qmodel.sql
- ./database/dm8/entrypoint.sh:/entrypoint.sh
- ./database/dm8/entrypoint-arm64.sh:/usr/local/bin/docker-entrypoint.sh
environment:
- TZ=${TZ}
- CASE_SENSITIVE=${CASE_SENSITIVE}
- SYSDBA_PWD=${SYSDBA_PWD}
- SYSAUDITOR_PWD=${SYSAUDITOR_PWD}
- QMODEL_USER=${QMODEL_USER}
- QMODEL_PWD=${QMODEL_PWD}
healthcheck:
test: [ "CMD-SHELL", "echo > /dev/tcp/127.0.0.1/5236" ]
interval: 20s # 每 20 秒检测一次
timeout: 5s # 超过 5 秒算失败
retries: 10 # 连续 10 次失败算 unhealthy
start_period: 1200s # 容忍 20 分钟内失败
networks:
- qmodel_net