Files
K12Study/docker/dev-common/docker-compose.public-services.yml
2026-04-20 10:39:36 +08:00

119 lines
3.4 KiB
YAML

services:
postgres:
image: postgres:18.3
container_name: k12study-dev-postgres
restart: unless-stopped
environment:
POSTGRES_DB: ${K12STUDY_DB_NAME:-k12study}
POSTGRES_USER: ${K12STUDY_DB_USER:-k12study}
POSTGRES_PASSWORD: ${K12STUDY_DB_PASSWORD:-k12study}
PGDATA: /var/lib/postgresql/18/docker
TZ: ${TZ:-Asia/Shanghai}
ports:
- "${K12STUDY_DB_PORT:-5432}:5432"
volumes:
- ${K12STUDY_RUN_DIR:-./runtime}/postgres/pg18:/var/lib/postgresql
healthcheck:
test: ["CMD-SHELL", "pg_isready -U ${K12STUDY_DB_USER:-k12study} -d ${K12STUDY_DB_NAME:-k12study}"]
interval: 10s
timeout: 5s
retries: 10
networks:
- k12study-dev-net
redis:
image: redis:7
container_name: k12study-dev-redis
restart: unless-stopped
command: redis-server --appendonly yes
ports:
- "${K12STUDY_REDIS_PORT:-6379}:6379"
volumes:
- ${K12STUDY_RUN_DIR:-./runtime}/redis/data:/data
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 10s
timeout: 5s
retries: 10
networks:
- k12study-dev-net
nacos:
image: nacos/nacos-server:v3.2.1-2026.04.03
container_name: k12study-dev-nacos
restart: unless-stopped
environment:
MODE: standalone
NACOS_AUTH_ENABLE: "false"
NACOS_AUTH_TOKEN: ${NACOS_AUTH_TOKEN:-azEyc3R1ZHktbmFjb3MtZGV2LXRva2VuLTIwMjY=}
NACOS_AUTH_IDENTITY_KEY: ${NACOS_AUTH_IDENTITY_KEY:-serverIdentity}
NACOS_AUTH_IDENTITY_VALUE: ${NACOS_AUTH_IDENTITY_VALUE:-security}
TZ: ${TZ:-Asia/Shanghai}
JVM_XMS: 256m
JVM_XMX: 512m
JVM_XMN: 128m
ports:
- "${K12STUDY_REGISTRY_PORT:-8848}:8848"
- "${K12STUDY_REGISTRY_GRPC_PORT:-9848}:9848"
- "${K12STUDY_REGISTRY_RAFT_PORT:-9849}:9849"
volumes:
- ${K12STUDY_RUN_DIR:-./runtime}/nacos/logs:/home/nacos/logs
- ${K12STUDY_RUN_DIR:-./runtime}/nacos/data:/home/nacos/data
networks:
- k12study-dev-net
nebula-metad:
image: vesoft/nebula-metad:v3.8.0
container_name: k12study-dev-nebula-metad
restart: unless-stopped
command:
- --meta_server_addrs=nebula-metad:9559
- --local_ip=nebula-metad
- --ws_ip=0.0.0.0
- --port=9559
- --data_path=/data/meta
ports:
- "${K12STUDY_NEBULA_META_PORT:-9559}:9559"
volumes:
- ${K12STUDY_RUN_DIR:-./runtime}/nebula/meta:/data/meta
networks:
- k12study-dev-net
nebula-storaged:
image: vesoft/nebula-storaged:v3.8.0
container_name: k12study-dev-nebula-storaged
restart: unless-stopped
command:
- --meta_server_addrs=nebula-metad:9559
- --local_ip=nebula-storaged
- --ws_ip=0.0.0.0
- --port=9779
- --data_path=/data/storage
depends_on:
- nebula-metad
ports:
- "${K12STUDY_NEBULA_STORAGE_PORT:-9779}:9779"
volumes:
- ${K12STUDY_RUN_DIR:-./runtime}/nebula/storage:/data/storage
networks:
- k12study-dev-net
nebula-graphd:
image: vesoft/nebula-graphd:v3.8.0
container_name: k12study-dev-nebula-graphd
restart: unless-stopped
command:
- --meta_server_addrs=nebula-metad:9559
- --local_ip=nebula-graphd
- --ws_ip=0.0.0.0
- --port=9669
depends_on:
- nebula-metad
- nebula-storaged
ports:
- "${K12STUDY_GRAPH_PORT:-9669}:9669"
networks:
- k12study-dev-net
networks:
k12study-dev-net:
name: ${K12STUDY_DOCKER_NET:-k12study-dev-net}
driver: bridge