services: chatwiki_redis_service: env_file: ./.env image: registry.cn-hangzhou.aliyuncs.com/chatwiki/redis:5.0 container_name: chatwiki_redis_service ports: - ${REDIS_PORT}:6379 command: redis-server --appendonly yes --requirepass ${REDIS_PASSWORD} volumes: - ../volumes/redis_data:/data networks: - chatwiki_network restart: always environment: TZ: ${TIMEZONE} chatwiki_crawler: image: registry.cn-hangzhou.aliyuncs.com/chatwiki/playwright:v1.44.1-jammy container_name: chatwiki_crawler restart: always environment: TZ: ${TIMEZONE} PRODUCTION: "true" CONCURRENT: 2 volumes: - ../:/var/www/crawler/ working_dir: /var/www/crawler command: ./build/crawler networks: - chatwiki_network ports: - ${CRAWLER_PORT}:3800 chatwiki_converter: image: registry.cn-hangzhou.aliyuncs.com/chatwiki/converter:1.7 container_name: chatwiki_converter restart: always environment: TZ: ${TIMEZONE} networks: - chatwiki_network chatwiki_postgres_service: env_file: ./.env container_name: chatwiki_postgres_service image: registry.cn-hangzhou.aliyuncs.com/chatwiki/postgres:20250513 environment: TZ: ${TIMEZONE} POSTGRES_USER: ${POSTGRES_USER} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} POSTGRES_DB: ${POSTGRES_DB} volumes: - ../volumes/postgres_data:/var/lib/postgresql/data ports: - ${POSTGRES_PORT}:5432 networks: - chatwiki_network restart: always healthcheck: test: [ "CMD-SHELL", "pg_isready -U ${POSTGRES_USER} -d ${POSTGRES_DB} -h localhost || exit 1" ] interval: 1s timeout: 10s retries: 20 start_period: 15s chatwiki_neo4j: image: registry.cn-hangzhou.aliyuncs.com/chatwiki/neo4j:20250417 container_name: chatwiki_neo4j volumes: - ../volumes/neo4j_data:/data - ../volumes/neo4j_conf:/conf environment: - NEO4J_AUTH=${NEO4J_AUTH} - TZ=${TIMEZONE} networks: - chatwiki_network ports: - "${NEO4J_DB_PORT}:7687" - "${NEO4J_WEB_PORT}:7474" healthcheck: test: wget http://localhost:7474 || exit 1 interval: 1s timeout: 10s retries: 20 start_period: 70s restart: always chatwiki_go_nsq_service: env_file: ./.env build: context: . dockerfile: DockerfileGoNsq container_name: chatwiki_go_nsq_service image: registry.cn-hangzhou.aliyuncs.com/chatwiki/go_nsq_service:20251103 working_dir: /var/www/go-nsq ports: - ${NSQADMIN_PORT}:4171 networks: - chatwiki_network restart: always environment: TZ: ${TIMEZONE} stdin_open: true tty: true command: - /bin/bash - -c - | supervisord /bin/bash chatwiki_go_push_service: env_file: ./.env build: context: . dockerfile: DockerfileGoPush container_name: chatwiki_go_push_service image: registry.cn-hangzhou.aliyuncs.com/chatwiki/go_push_service:20251103 volumes: - ../:/var/www/chatwiki/ working_dir: /var/www/chatwiki ports: - ${PUSH_SERVICE_PORT}:24529 networks: - chatwiki_network restart: always depends_on: - chatwiki_redis_service - chatwiki_postgres_service - chatwiki_go_nsq_service environment: TZ: ${TIMEZONE} stdin_open: true tty: true command: - /bin/bash - -c - | supervisord /bin/bash chatwiki_go_core_service: env_file: ./.env build: context: . dockerfile: DockerfileGoCore container_name: chatwiki_go_core_service image: registry.cn-hangzhou.aliyuncs.com/chatwiki/go_core_service:20251110 volumes: - ../:/var/www/chatwiki/ - ../volumes/nginx_logs:/var/log/nginx/ working_dir: /var/www/chatwiki extra_hosts: - "host.docker.internal:host-gateway" ports: - ${CHAT_SERVICE_PORT}:8080 - ${H5_SERVICE_PORT}:8081 - ${PC_SERVICE_PORT}:8082 networks: - chatwiki_network restart: always depends_on: chatwiki_redis_service: condition: service_started chatwiki_postgres_service: condition: service_started chatwiki_go_nsq_service: condition: service_started chatwiki_websocket: condition: service_started chatwiki_neo4j: condition: service_healthy environment: TZ: ${TIMEZONE} HTTP_PROXY: ${PROXY:-} HTTPS_PROXY: ${PROXY:-} stdin_open: true tty: true command: - /bin/bash - -c - | supervisord nginx /bin/bash chatwiki_websocket: image: registry.cn-hangzhou.aliyuncs.com/chatwiki/ubuntu:22.04 container_name: chatwiki_websocket ports: - ${WS_SERVICE_PORT}:24628 networks: - chatwiki_network volumes: - ../:/var/www/chatwiki/ working_dir: /var/www/chatwiki command: ./build/websocket --IsDev=false restart: always depends_on: - chatwiki_go_nsq_service environment: TZ: ${TIMEZONE} chatwiki_code_run: image: registry.cn-hangzhou.aliyuncs.com/chatwiki/ubuntu:22.04 container_name: chatwiki_code_run networks: - chatwiki_network volumes: - ../:/var/www/chatwiki/ working_dir: /var/www/chatwiki command: ./build/code_run --IsDev=false restart: always environment: TZ: ${TIMEZONE} chatwiki_plugin: image: registry.cn-hangzhou.aliyuncs.com/chatwiki/plugin:1.0 container_name: chatwiki_plugin networks: - chatwiki_network volumes: - ../:/var/www/chatwiki/ working_dir: /var/www/chatwiki command: ./build/plugin --IsDev=false restart: always environment: TZ: ${TIMEZONE} networks: chatwiki_network: driver: bridge