version : '3.8' services: ruoyi-nacos: container_name: ruoyi-nacos image: nacos-runtime build: context: ./nacos environment: - MODE=standalone - TZ=Asia/Shanghai volumes: - ./nacos/logs/:/home/nacos/logs - ./nacos/conf/application.properties:/home/nacos/conf/application.properties ports: - "8848:8848" - "9848:9848" - "9849:9849" depends_on: - ruoyi-mysql ruoyi-mysql: container_name: ruoyi-mysql image: mysql-runtime build: context: ./mysql ports: - "3306:3306" volumes: - ./mysql/conf:/etc/mysql/conf.d - ./mysql/logs:/logs - ./mysql/data:/var/lib/mysql command: [ 'mysqld', '--innodb-buffer-pool-size=80M', '--character-set-server=utf8mb4', '--collation-server=utf8mb4_unicode_ci', '--default-time-zone=+8:00', '--lower-case-table-names=1' ] environment: TZ: Asia/Shanghai MYSQL_DATABASE: 'ry-cloud' MYSQL_ROOT_PASSWORD: password ruoyi-redis: container_name: ruoyi-redis image: redis-runtime build: context: ./redis environment: - TZ=Asia/Shanghai ports: - "6379:6379" volumes: - ./redis/conf/redis.conf:/home/ruoyi/redis/redis.conf command: redis-server /home/ruoyi/redis/redis.conf ruoyi-minio: container_name: ruoyi-minio image: registry.t-aaron.com/minio/minio:RELEASE.2024-12-18T13-15-44Z environment: - MINIO_ROOT_USER=minioadmin - MINIO_ROOT_PASSWORD=minioadmin - TZ=Asia/Shanghai ports: - "9000:9000" - "9001:9001" volumes: - ./minio/data:/data - ./minio/config:/root/.minio command: server /data --console-address ":9001" restart: unless-stopped ruoyi-nginx: container_name: ruoyi-nginx image: nginx-runtime build: context: ./nginx environment: - TZ=Asia/Shanghai ports: - "8899:80" volumes: - ./nginx/html/dist:/home/ruoyi/projects/ruoyi-ui - ./nginx/conf/nginx.conf:/etc/nginx/nginx.conf - ./nginx/logs:/var/log/nginx - ./nginx/conf.d:/etc/nginx/conf.d depends_on: - ruoyi-gateway links: - ruoyi-gateway ruoyi-hyf: container_name: ruoyi-hyf image: hyf-runtime build: context: ./a_th_web environment: - TZ=Asia/Shanghai ports: - "9988:80" volumes: - ./a_th_web/html/dist:/home/ruoyi/projects/ruoyi-ui - ./a_th_web/conf/nginx.conf:/etc/nginx/nginx.conf - ./a_th_web/logs:/var/log/nginx - ./a_th_web/conf.d:/etc/nginx/conf.d depends_on: - ruoyi-gateway links: - ruoyi-gateway ruoyi-gateway: container_name: ruoyi-gateway image: gateway-runtime build: context: ./ruoyi/gateway dockerfile: dockerfile environment: - TZ=Asia/Shanghai ports: - "8080:8080" depends_on: - ruoyi-redis links: - ruoyi-redis ruoyi-auth: container_name: ruoyi-auth image: ruoyi-auth-runtime build: context: ./ruoyi/auth dockerfile: dockerfile environment: - TZ=Asia/Shanghai ports: - "9200:9200" depends_on: - ruoyi-redis links: - ruoyi-redis ruoyi-modules-system: container_name: ruoyi-modules-system image: ruoyi-modules-system-runtime build: context: ./ruoyi/modules/system dockerfile: dockerfile environment: - TZ=Asia/Shanghai ports: - "9201:9201" depends_on: - ruoyi-redis - ruoyi-mysql links: - ruoyi-redis - ruoyi-mysql ruoyi-modules-gen: container_name: ruoyi-modules-gen image: ruoyi-modules-gen-runtime build: context: ./ruoyi/modules/gen dockerfile: dockerfile environment: - TZ=Asia/Shanghai ports: - "9202:9202" depends_on: - ruoyi-mysql links: - ruoyi-mysql ruoyi-modules-job: container_name: ruoyi-modules-job image: ruoyi-modules-job-runtime build: context: ./ruoyi/modules/job dockerfile: dockerfile environment: - TZ=Asia/Shanghai ports: - "9203:9203" depends_on: - ruoyi-mysql links: - ruoyi-mysql ruoyi-modules-file: container_name: ruoyi-modules-file image: ruoyi-modules-file-runtime build: context: ./ruoyi/modules/file dockerfile: dockerfile environment: - TZ=Asia/Shanghai ports: - "9300:9300" volumes: - ./ruoyi/uploadPath:/home/ruoyi/uploadPath ruoyi-visual-monitor: container_name: ruoyi-visual-monitor image: ruoyi-visual-monitor-runtime build: context: ./ruoyi/visual/monitor dockerfile: dockerfile environment: - TZ=Asia/Shanghai ports: - "9100:9100" tuoheng-modules-approval: container_name: tuoheng-modules-approval image: tuoheng-modules-approval-runtime build: context: ./ruoyi/modules/approval dockerfile: dockerfile environment: - TZ=Asia/Shanghai ports: - "9212:9212" depends_on: - ruoyi-redis - ruoyi-mysql links: - ruoyi-redis - ruoyi-mysql tuoheng-modules-device: container_name: tuoheng-modules-device image: tuoheng-modules-device-runtime build: context: ./ruoyi/modules/device dockerfile: dockerfile environment: - TZ=Asia/Shanghai ports: - "9210:9210" depends_on: - ruoyi-redis - ruoyi-mysql links: - ruoyi-redis - ruoyi-mysql tuoheng-modules-airline: container_name: tuoheng-modules-airline image: tuoheng-modules-airline-runtime build: context: ./ruoyi/modules/airline dockerfile: dockerfile environment: - TZ=Asia/Shanghai ports: - "9211:9211" depends_on: - ruoyi-redis - ruoyi-mysql links: - ruoyi-redis - ruoyi-mysql tuoheng-modules-task: container_name: tuoheng-modules-task image: tuoheng-modules-task-runtime build: context: ./ruoyi/modules/task dockerfile: dockerfile environment: - TZ=Asia/Shanghai ports: - "9215:9215" depends_on: - ruoyi-redis - ruoyi-mysql links: - ruoyi-redis - ruoyi-mysql tuoheng-modules-fms: container_name: tuoheng-modules-fms image: tuoheng-modules-fms-runtime build: context: ./ruoyi/modules/fms dockerfile: dockerfile environment: - TZ=Asia/Shanghai ports: - "9213:9213" depends_on: - ruoyi-redis - ruoyi-mysql links: - ruoyi-redis - ruoyi-mysql tuoheng-modules-media: container_name: tuoheng-modules-media image: tuoheng-modules-media-runtime build: context: ./ruoyi/modules/media dockerfile: dockerfile environment: - TZ=Asia/Shanghai ports: - "9214:9214" depends_on: - ruoyi-redis - ruoyi-mysql links: - ruoyi-redis - ruoyi-mysql wvp-pro: container_name: wvp-pro image: wvp-pro-runtime build: context: ./wvp/wvpjar dockerfile: dockerfile environment: - TZ=Asia/Shanghai # Redis 配置 - REDIS_HOST=ruoyi-redis - REDIS_PORT=6379 # MySQL 数据库配置 - DATABASE_HOST=ruoyi-mysql - DATABASE_PORT=3306 - DATABASE_USER=ylcx - DATABASE_PASSWORD=Tuoheng@2025 # SIP 配置 - SIP_ShowIP=127.0.0.1 - SIP_Port=5060 - SIP_Domain=3502000000 - SIP_Id=35020000002000000001 - SIP_Password=wvp_sip_password # ZLM 媒体服务器配置 - ZLM_HOST=zlmediakit - ZLM_HOOK_HOST=wvp-pro - ZLM_SERCERT=fgVdaI75GcSBPeSBvg8NL7aRrlkCtGPv # 流媒体地址配置 - Stream_IP=127.0.0.1 - SDP_IP=127.0.0.1 # 流媒体端口配置 - MediaHttp=9090 - MediaHttps= - MediaRtp=10000 - MediaRtmp=1935 - MediaRtsp=8554 # 录像配置 - RecordPushLive=false - RecordSip=false ports: - "28080:18978" - "5060:5060/udp" # - "6379:6379" volumes: - ./wvp/logs:/home/ruoyi/logs depends_on: - ruoyi-redis - ruoyi-mysql - zlmediakit links: - ruoyi-redis - ruoyi-mysql - zlmediakit restart: unless-stopped zlmediakit: container_name: zlmediakit image: registry.t-aaron.com/zlmediakit/zlmediakit:Release.latest environment: - TZ=Asia/Shanghai ports: - "1935:1935" # RTMP - "9090:80" # HTTP - "8443:443" # HTTPS - "8554:554" # RTSP - "10000:10000" # RTP TCP - "10000:10000/udp" # RTP UDP - "8000:8000/udp" # WebRTC UDP - "9900:9000/udp" # WebRTC UDP (注意:与 minio 9000 端口冲突,可能需要调整) volumes: - ./zlmediakit/config.ini:/opt/media/conf/config.ini restart: unless-stopped wvp-web: container_name: wvp-web image: wvp-web-runtime build: context: ./wvp/web environment: - TZ=Asia/Shanghai ports: - "28181:80" volumes: - ./wvp/web/html/dist:/home/ruoyi/projects/wvp-ui - ./wvp/web/conf/nginx.conf:/etc/nginx/nginx.conf - ./wvp/web/logs:/var/log/nginx - ./wvp/web/conf.d:/etc/nginx/conf.d depends_on: - wvp-pro links: - wvp-pro