2026-02-09 18:07:46 +08:00
|
|
|
version: '3.8'
|
|
|
|
|
|
2026-02-09 18:16:24 +08:00
|
|
|
networks:
|
|
|
|
|
datakeep-net:
|
|
|
|
|
driver: bridge
|
|
|
|
|
|
2026-02-09 18:07:46 +08:00
|
|
|
services:
|
|
|
|
|
backend:
|
|
|
|
|
build: ./backend
|
|
|
|
|
container_name: datakeep-backend
|
|
|
|
|
restart: unless-stopped
|
|
|
|
|
environment:
|
|
|
|
|
- TZ=Asia/Shanghai
|
|
|
|
|
- DATAKEEP_DATA_DIR=/data
|
|
|
|
|
volumes:
|
|
|
|
|
- ./data/datakeep:/data
|
|
|
|
|
networks:
|
|
|
|
|
- datakeep-net
|
|
|
|
|
|
|
|
|
|
frontend:
|
|
|
|
|
build: ./frontend
|
|
|
|
|
container_name: datakeep-frontend
|
|
|
|
|
restart: unless-stopped
|
|
|
|
|
ports:
|
|
|
|
|
- "12000:80"
|
|
|
|
|
depends_on:
|
|
|
|
|
- backend
|
|
|
|
|
networks:
|
|
|
|
|
- datakeep-net
|
|
|
|
|
|
2026-02-09 18:16:24 +08:00
|
|
|
# ===== DR Instance 1 (示例) =====
|
|
|
|
|
dr1-mysql:
|
2026-02-09 18:07:46 +08:00
|
|
|
image: mysql:8.0
|
2026-02-09 18:16:24 +08:00
|
|
|
container_name: dr1-mysql
|
2026-02-09 18:07:46 +08:00
|
|
|
restart: unless-stopped
|
|
|
|
|
environment:
|
2026-02-09 18:16:24 +08:00
|
|
|
MYSQL_ROOT_PASSWORD: rootpass1
|
2026-02-09 18:07:46 +08:00
|
|
|
volumes:
|
2026-02-09 18:16:24 +08:00
|
|
|
- ./data/dr1/mysql:/var/lib/mysql
|
2026-02-09 18:07:46 +08:00
|
|
|
networks:
|
|
|
|
|
- datakeep-net
|
|
|
|
|
|
2026-02-09 18:16:24 +08:00
|
|
|
dr1-redis:
|
2026-02-09 18:07:46 +08:00
|
|
|
image: redis:7-alpine
|
2026-02-09 18:16:24 +08:00
|
|
|
container_name: dr1-redis
|
2026-02-09 18:07:46 +08:00
|
|
|
restart: unless-stopped
|
2026-02-09 18:16:24 +08:00
|
|
|
command: ["redis-server", "--appendonly", "yes"]
|
2026-02-09 18:07:46 +08:00
|
|
|
volumes:
|
2026-02-09 18:16:24 +08:00
|
|
|
- ./data/dr1/redis:/data
|
|
|
|
|
networks:
|
|
|
|
|
- datakeep-net
|
|
|
|
|
|
|
|
|
|
dr1-minio:
|
|
|
|
|
image: minio/minio:latest
|
|
|
|
|
container_name: dr1-minio
|
|
|
|
|
restart: unless-stopped
|
|
|
|
|
environment:
|
|
|
|
|
MINIO_ROOT_USER: minio1
|
|
|
|
|
MINIO_ROOT_PASSWORD: minio1pass123
|
|
|
|
|
command: server /data --console-address ":9001"
|
|
|
|
|
volumes:
|
|
|
|
|
- ./data/dr1/minio:/data
|
|
|
|
|
networks:
|
|
|
|
|
- datakeep-net
|
|
|
|
|
|
|
|
|
|
# ===== DR Instance 2 (示例) =====
|
|
|
|
|
dr2-mysql:
|
|
|
|
|
image: mysql:8.0
|
|
|
|
|
container_name: dr2-mysql
|
|
|
|
|
restart: unless-stopped
|
|
|
|
|
environment:
|
|
|
|
|
MYSQL_ROOT_PASSWORD: rootpass2
|
|
|
|
|
volumes:
|
|
|
|
|
- ./data/dr2/mysql:/var/lib/mysql
|
|
|
|
|
networks:
|
|
|
|
|
- datakeep-net
|
|
|
|
|
|
|
|
|
|
dr2-redis:
|
|
|
|
|
image: redis:7-alpine
|
|
|
|
|
container_name: dr2-redis
|
|
|
|
|
restart: unless-stopped
|
2026-02-09 18:07:46 +08:00
|
|
|
command: ["redis-server", "--appendonly", "yes"]
|
2026-02-09 18:16:24 +08:00
|
|
|
volumes:
|
|
|
|
|
- ./data/dr2/redis:/data
|
2026-02-09 18:07:46 +08:00
|
|
|
networks:
|
|
|
|
|
- datakeep-net
|
|
|
|
|
|
2026-02-09 18:16:24 +08:00
|
|
|
dr2-minio:
|
2026-02-09 18:07:46 +08:00
|
|
|
image: minio/minio:latest
|
2026-02-09 18:16:24 +08:00
|
|
|
container_name: dr2-minio
|
2026-02-09 18:07:46 +08:00
|
|
|
restart: unless-stopped
|
|
|
|
|
environment:
|
2026-02-09 18:16:24 +08:00
|
|
|
MINIO_ROOT_USER: minio2
|
|
|
|
|
MINIO_ROOT_PASSWORD: minio2pass123
|
2026-02-09 18:07:46 +08:00
|
|
|
command: server /data --console-address ":9001"
|
|
|
|
|
volumes:
|
2026-02-09 18:16:24 +08:00
|
|
|
- ./data/dr2/minio:/data
|
2026-02-09 18:07:46 +08:00
|
|
|
networks:
|
|
|
|
|
- datakeep-net
|
|
|
|
|
|
2026-02-09 18:16:24 +08:00
|
|
|
# ===== DR Instance 3 (示例) =====
|
|
|
|
|
dr3-mysql:
|
|
|
|
|
image: mysql:8.0
|
|
|
|
|
container_name: dr3-mysql
|
|
|
|
|
restart: unless-stopped
|
|
|
|
|
environment:
|
|
|
|
|
MYSQL_ROOT_PASSWORD: rootpass3
|
|
|
|
|
volumes:
|
|
|
|
|
- ./data/dr3/mysql:/var/lib/mysql
|
|
|
|
|
networks:
|
|
|
|
|
- datakeep-net
|
|
|
|
|
|
|
|
|
|
dr3-redis:
|
|
|
|
|
image: redis:7-alpine
|
|
|
|
|
container_name: dr3-redis
|
|
|
|
|
restart: unless-stopped
|
|
|
|
|
command: ["redis-server", "--appendonly", "yes"]
|
|
|
|
|
volumes:
|
|
|
|
|
- ./data/dr3/redis:/data
|
|
|
|
|
networks:
|
|
|
|
|
- datakeep-net
|
2026-02-09 18:07:46 +08:00
|
|
|
|
2026-02-09 18:16:24 +08:00
|
|
|
dr3-minio:
|
|
|
|
|
image: minio/minio:latest
|
|
|
|
|
container_name: dr3-minio
|
|
|
|
|
restart: unless-stopped
|
|
|
|
|
environment:
|
|
|
|
|
MINIO_ROOT_USER: minio3
|
|
|
|
|
MINIO_ROOT_PASSWORD: minio3pass123
|
|
|
|
|
command: server /data --console-address ":9001"
|
|
|
|
|
volumes:
|
|
|
|
|
- ./data/dr3/minio:/data
|
|
|
|
|
networks:
|
|
|
|
|
- datakeep-net
|