bash
复制代码
version: '3.8'
services:
redis-isolated:
image: redis:7.2
container_name: isolated-redis
restart: unless-stopped # 除非手动停止,否则总是重启
ports:
- "6380:6379"
volumes:
- /usr/local/docker/redis/data:/redis/data
- /usr/local/docker/redis/conf:/redis/conf
- /usr/local/docker/redis/log:/redis/log
command: >
redis-server /redis/conf/redis.conf
--requirepass 1908@123456
--logfile /redis/log/redis-server.log
healthcheck:
test: ["CMD", "redis-cli", "-a", "1908@123456", "ping"]
interval: 10s
timeout: 5s
retries: 3
networks:
- regongyuan-network
nginx-isolated:
image: nginx:1.23.2
container_name: isolated-nginx
restart: unless-stopped
ports:
- "8081:80"
- "3000:3000"
- "3800:3800"
- "5173:5173"
environment:
- TZ=Asia/Shanghai
volumes:
- /usr/local/docker/nginx/conf/nginx.conf:/etc/nginx/nginx.conf:ro
- /usr/local/docker/nginx/conf.d:/etc/nginx/conf.d:ro
- /usr/local/docker/nginx/html:/usr/share/nginx/html:rw
- /usr/local/docker/nginx/log:/var/log/nginx
depends_on:
- redis-isolated
- java-app
- xxljob-app
- workflow-app
networks:
- regongyuan-network
tdengine-isolated:
image: tdengine/tdengine:2.6.0.34
container_name: isolated-tdengine
restart: unless-stopped
ports:
- "16030:6030"
- "16031:6031"
- "16032:6032"
- "16041:6041"
- "16042:6042"
- "16040:6040"
volumes:
- /usr/local/docker/tdengine/data:/var/lib/taos
- /usr/local/docker/tdengine/log:/var/log/taos
- /usr/local/docker/tdengine/conf/taos.cfg:/etc/taos/taos.cfg:ro
ulimits:
nofile:
soft: 65535
hard: 65535
healthcheck:
test: ["CMD", "taos", "-s", "show dnodes;"]
interval: 30s
timeout: 10s
retries: 3
networks:
- regongyuan-network
java-app:
build:
context: .
dockerfile: Dockerfile.rgyadmin
container_name: rgyadmin
restart: unless-stopped
ports:
- "30000:30000"
volumes:
- /usr/local/docker/java-app/resources:/data/resources
- /usr/local/docker/java-app/logs:/data/logs
depends_on:
redis-isolated:
condition: service_healthy
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:30000/actuator/health", "||", "exit", "1"]
interval: 30s
timeout: 10s
retries: 3
start_period: 40s
networks:
- regongyuan-network
xxljob-app:
build:
context: .
dockerfile: Dockerfile.xxljob
container_name: rgyxxljob
restart: unless-stopped
ports:
- "30020:30020"
volumes:
- /usr/local/docker/xxljob/logs:/data/logs
depends_on:
redis-isolated:
condition: service_healthy
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:30020/actuator/health", "||", "exit", "1"]
interval: 30s
timeout: 10s
retries: 3
start_period: 40s
networks:
- regongyuan-network
workflow-app:
build:
context: .
dockerfile: Dockerfile.workflow
container_name: rgyworkflow
restart: unless-stopped
ports:
- "31000:31000"
volumes:
- /usr/local/docker/workflow/logs:/data/logs
depends_on:
redis-isolated:
condition: service_healthy
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:31000/actuator/health", "||", "exit", "1"]
interval: 30s
timeout: 10s
retries: 3
start_period: 40s
networks:
- regongyuan-network
networks:
regongyuan-network:
name: regongyuan-network
driver: bridge