2026-01-09 15:21:26 +08:00
|
|
|
|
version : '3.8'
|
|
|
|
|
|
services:
|
|
|
|
|
|
ruoyi-nacos:
|
|
|
|
|
|
container_name: ruoyi-nacos
|
|
|
|
|
|
image: nacos-runtime
|
|
|
|
|
|
build:
|
|
|
|
|
|
context: ./nacos
|
|
|
|
|
|
environment:
|
|
|
|
|
|
- MODE=standalone
|
2026-01-15 09:35:09 +08:00
|
|
|
|
- TZ=Asia/Shanghai
|
2026-01-09 15:21:26 +08:00
|
|
|
|
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:
|
2026-01-15 09:35:09 +08:00
|
|
|
|
TZ: Asia/Shanghai
|
2026-01-09 15:21:26 +08:00
|
|
|
|
MYSQL_DATABASE: 'ry-cloud'
|
|
|
|
|
|
MYSQL_ROOT_PASSWORD: password
|
|
|
|
|
|
ruoyi-redis:
|
|
|
|
|
|
container_name: ruoyi-redis
|
|
|
|
|
|
image: redis-runtime
|
|
|
|
|
|
build:
|
|
|
|
|
|
context: ./redis
|
2026-01-15 09:35:09 +08:00
|
|
|
|
environment:
|
|
|
|
|
|
- TZ=Asia/Shanghai
|
2026-01-09 15:21:26 +08:00
|
|
|
|
ports:
|
|
|
|
|
|
- "6379:6379"
|
|
|
|
|
|
volumes:
|
|
|
|
|
|
- ./redis/conf/redis.conf:/home/ruoyi/redis/redis.conf
|
|
|
|
|
|
command: redis-server /home/ruoyi/redis/redis.conf
|
2026-01-24 10:59:56 +08:00
|
|
|
|
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
|
2026-01-09 15:21:26 +08:00
|
|
|
|
ruoyi-nginx:
|
|
|
|
|
|
container_name: ruoyi-nginx
|
|
|
|
|
|
image: nginx-runtime
|
|
|
|
|
|
build:
|
|
|
|
|
|
context: ./nginx
|
2026-01-15 09:35:09 +08:00
|
|
|
|
environment:
|
|
|
|
|
|
- TZ=Asia/Shanghai
|
2026-01-09 15:21:26 +08:00
|
|
|
|
ports:
|
2026-01-10 10:05:16 +08:00
|
|
|
|
- "8899:80"
|
2026-01-09 15:21:26 +08:00
|
|
|
|
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
|
2026-01-13 09:25:08 +08:00
|
|
|
|
ruoyi-hyf:
|
|
|
|
|
|
container_name: ruoyi-hyf
|
|
|
|
|
|
image: hyf-runtime
|
|
|
|
|
|
build:
|
2026-01-13 09:30:01 +08:00
|
|
|
|
context: ./a_th_web
|
2026-01-15 09:35:09 +08:00
|
|
|
|
environment:
|
|
|
|
|
|
- TZ=Asia/Shanghai
|
2026-01-13 09:25:08 +08:00
|
|
|
|
ports:
|
|
|
|
|
|
- "9988:80"
|
|
|
|
|
|
volumes:
|
2026-01-13 09:30:01 +08:00
|
|
|
|
- ./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
|
2026-01-13 09:25:08 +08:00
|
|
|
|
depends_on:
|
|
|
|
|
|
- ruoyi-gateway
|
|
|
|
|
|
links:
|
|
|
|
|
|
- ruoyi-gateway
|
2026-01-31 15:33:41 +08:00
|
|
|
|
ruoyi-hxf:
|
|
|
|
|
|
container_name: ruoyi-hxf
|
|
|
|
|
|
image: hxf-runtime
|
|
|
|
|
|
build:
|
|
|
|
|
|
context: ./b_th_web
|
|
|
|
|
|
environment:
|
|
|
|
|
|
- TZ=Asia/Shanghai
|
|
|
|
|
|
ports:
|
|
|
|
|
|
- "9898:80"
|
|
|
|
|
|
volumes:
|
|
|
|
|
|
- ./b_th_web/html/dist:/home/ruoyi/projects/ruoyi-ui
|
|
|
|
|
|
- ./b_th_web/conf/nginx.conf:/etc/nginx/nginx.conf
|
|
|
|
|
|
- ./b_th_web/logs:/var/log/nginx
|
|
|
|
|
|
- ./b_th_web/conf.d:/etc/nginx/conf.d
|
|
|
|
|
|
depends_on:
|
|
|
|
|
|
- ruoyi-gateway
|
|
|
|
|
|
links:
|
|
|
|
|
|
- ruoyi-gateway
|
2026-01-09 15:21:26 +08:00
|
|
|
|
ruoyi-gateway:
|
|
|
|
|
|
container_name: ruoyi-gateway
|
|
|
|
|
|
image: gateway-runtime
|
|
|
|
|
|
build:
|
|
|
|
|
|
context: ./ruoyi/gateway
|
|
|
|
|
|
dockerfile: dockerfile
|
2026-01-15 09:21:19 +08:00
|
|
|
|
environment:
|
|
|
|
|
|
- TZ=Asia/Shanghai
|
2026-01-09 15:21:26 +08:00
|
|
|
|
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
|
2026-01-15 09:21:19 +08:00
|
|
|
|
environment:
|
|
|
|
|
|
- TZ=Asia/Shanghai
|
2026-01-09 15:21:26 +08:00
|
|
|
|
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
|
2026-01-15 09:21:19 +08:00
|
|
|
|
environment:
|
|
|
|
|
|
- TZ=Asia/Shanghai
|
2026-01-09 15:21:26 +08:00
|
|
|
|
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
|
2026-01-15 09:21:19 +08:00
|
|
|
|
environment:
|
|
|
|
|
|
- TZ=Asia/Shanghai
|
2026-01-09 15:21:26 +08:00
|
|
|
|
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
|
2026-01-15 09:21:19 +08:00
|
|
|
|
environment:
|
|
|
|
|
|
- TZ=Asia/Shanghai
|
2026-01-09 15:21:26 +08:00
|
|
|
|
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
|
2026-01-15 09:21:19 +08:00
|
|
|
|
environment:
|
|
|
|
|
|
- TZ=Asia/Shanghai
|
2026-01-09 15:21:26 +08:00
|
|
|
|
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
|
2026-01-15 09:21:19 +08:00
|
|
|
|
environment:
|
|
|
|
|
|
- TZ=Asia/Shanghai
|
2026-01-09 15:21:26 +08:00
|
|
|
|
ports:
|
|
|
|
|
|
- "9100:9100"
|
|
|
|
|
|
tuoheng-modules-approval:
|
|
|
|
|
|
container_name: tuoheng-modules-approval
|
|
|
|
|
|
image: tuoheng-modules-approval-runtime
|
|
|
|
|
|
build:
|
|
|
|
|
|
context: ./ruoyi/modules/approval
|
|
|
|
|
|
dockerfile: dockerfile
|
2026-01-15 09:21:19 +08:00
|
|
|
|
environment:
|
|
|
|
|
|
- TZ=Asia/Shanghai
|
2026-01-09 15:21:26 +08:00
|
|
|
|
ports:
|
2026-01-17 10:52:24 +08:00
|
|
|
|
- "9212:9212"
|
2026-01-09 15:21:26 +08:00
|
|
|
|
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
|
2026-01-15 09:21:19 +08:00
|
|
|
|
environment:
|
|
|
|
|
|
- TZ=Asia/Shanghai
|
2026-01-09 15:21:26 +08:00
|
|
|
|
ports:
|
2026-01-17 10:52:24 +08:00
|
|
|
|
- "9210:9210"
|
2026-01-09 15:21:26 +08:00
|
|
|
|
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
|
2026-01-15 09:21:19 +08:00
|
|
|
|
environment:
|
|
|
|
|
|
- TZ=Asia/Shanghai
|
2026-01-09 15:21:26 +08:00
|
|
|
|
ports:
|
2026-01-17 10:52:24 +08:00
|
|
|
|
- "9211:9211"
|
2026-01-09 15:21:26 +08:00
|
|
|
|
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
|
2026-01-15 09:21:19 +08:00
|
|
|
|
environment:
|
|
|
|
|
|
- TZ=Asia/Shanghai
|
2026-01-09 15:21:26 +08:00
|
|
|
|
ports:
|
2026-01-17 10:52:24 +08:00
|
|
|
|
- "9215:9215"
|
2026-01-09 15:21:26 +08:00
|
|
|
|
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
|
2026-01-15 09:21:19 +08:00
|
|
|
|
environment:
|
|
|
|
|
|
- TZ=Asia/Shanghai
|
2026-01-09 15:21:26 +08:00
|
|
|
|
ports:
|
2026-01-17 10:52:24 +08:00
|
|
|
|
- "9213:9213"
|
2026-01-09 15:21:26 +08:00
|
|
|
|
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
|
2026-01-15 09:21:19 +08:00
|
|
|
|
environment:
|
|
|
|
|
|
- TZ=Asia/Shanghai
|
2026-01-09 15:21:26 +08:00
|
|
|
|
ports:
|
2026-01-17 10:52:24 +08:00
|
|
|
|
- "9214:9214"
|
2026-01-09 15:21:26 +08:00
|
|
|
|
depends_on:
|
|
|
|
|
|
- ruoyi-redis
|
|
|
|
|
|
- ruoyi-mysql
|
|
|
|
|
|
links:
|
|
|
|
|
|
- ruoyi-redis
|
|
|
|
|
|
- ruoyi-mysql
|
2026-02-02 15:02:46 +08:00
|
|
|
|
# ============================================================================
|
|
|
|
|
|
# WVP-PRO 视频管理平台
|
|
|
|
|
|
# ============================================================================
|
|
|
|
|
|
# WVP是基于GB28181协议的视频管理平台,使用ZLMediaKit作为流媒体服务器
|
|
|
|
|
|
# 端口说明:
|
|
|
|
|
|
# - 18080:18978 → WVP的HTTP API端口,外部通过18080访问
|
|
|
|
|
|
# - 5060:5060/udp → SIP信令端口,用于GB28181设备注册和控制
|
|
|
|
|
|
# ============================================================================
|
2026-01-26 10:08:38 +08:00
|
|
|
|
wvp-pro:
|
|
|
|
|
|
container_name: wvp-pro
|
|
|
|
|
|
image: wvp-pro-runtime
|
|
|
|
|
|
build:
|
|
|
|
|
|
context: ./wvp/wvpjar
|
|
|
|
|
|
dockerfile: dockerfile
|
|
|
|
|
|
environment:
|
|
|
|
|
|
- TZ=Asia/Shanghai
|
2026-01-26 12:24:50 +08:00
|
|
|
|
# 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
|
2026-02-02 15:02:46 +08:00
|
|
|
|
# ========== ZLM 媒体服务器配置 ==========
|
|
|
|
|
|
# ZLM_HOST: WVP调用ZLM API时使用的地址(容器内部服务名)
|
|
|
|
|
|
# 用途:wvp-pro通过 http://zlmediakit:80/index/api/xxx 调用ZLM的RESTful API
|
2026-01-26 12:24:50 +08:00
|
|
|
|
- ZLM_HOST=zlmediakit
|
2026-02-02 15:02:46 +08:00
|
|
|
|
# ZLM_HOOK_HOST: ZLM回调WVP时使用的地址(容器内部服务名)
|
|
|
|
|
|
# 用途:zlmediakit通过 http://wvp-pro:18978/index/hook/on_publish 回调WVP
|
2026-01-26 12:24:50 +08:00
|
|
|
|
- ZLM_HOOK_HOST=wvp-pro
|
2026-02-02 15:02:46 +08:00
|
|
|
|
# ZLM_SERCERT: ZLM的API密钥,必须与zlmediakit/config.ini中的api.secret一致
|
2026-01-26 12:24:50 +08:00
|
|
|
|
- ZLM_SERCERT=fgVdaI75GcSBPeSBvg8NL7aRrlkCtGPv
|
2026-02-02 15:02:46 +08:00
|
|
|
|
# ========== 流媒体地址配置 ==========
|
|
|
|
|
|
# Stream_IP: 生成播放地址时使用的IP(宿主机外网IP或域名)
|
2026-02-05 17:10:06 +08:00
|
|
|
|
# 用途:WVP生成的播放地址格式为 http://45.120.103.238:9090/live/123.live.flv
|
2026-02-02 15:02:46 +08:00
|
|
|
|
# 对应application.yml中的media.stream-ip配置
|
2026-02-05 17:10:06 +08:00
|
|
|
|
- Stream_IP=45.120.103.238
|
2026-02-02 15:02:46 +08:00
|
|
|
|
# SDP_IP: WVP在国标信令中使用的IP
|
|
|
|
|
|
# 用途:GB28181设备通过此IP与WVP进行媒体流传输
|
|
|
|
|
|
# 对应application.yml中的media.sdp-ip配置
|
2026-02-05 17:10:06 +08:00
|
|
|
|
- SDP_IP=45.120.103.238
|
2026-02-02 15:02:46 +08:00
|
|
|
|
# ========== 流媒体端口配置(宿主机外部端口) ==========
|
|
|
|
|
|
# 以下端口用于生成客户端播放地址,必须与zlmediakit容器的端口映射一致
|
|
|
|
|
|
#
|
|
|
|
|
|
# MediaHttp: HTTP播放端口(对应zlmediakit的9090:80映射)
|
|
|
|
|
|
# 用途:生成HTTP-FLV/HLS/TS/RTC播放地址
|
2026-02-05 17:10:06 +08:00
|
|
|
|
# 示例:http://45.120.103.238:9090/live/123.live.flv
|
2026-02-02 15:02:46 +08:00
|
|
|
|
# 对应application.yml中的media.flv-port和media.ws-flv-port配置
|
2026-01-26 12:24:50 +08:00
|
|
|
|
- MediaHttp=9090
|
2026-02-02 15:02:46 +08:00
|
|
|
|
# MediaHttps: HTTPS播放端口(对应zlmediakit的8443:443映射)
|
|
|
|
|
|
# 用途:生成HTTPS-FLV/HLS/TS播放地址
|
2026-02-05 17:10:06 +08:00
|
|
|
|
# 示例:https://45.120.103.238:8443/live/123.live.flv
|
2026-02-02 15:02:46 +08:00
|
|
|
|
# 对应application.yml中的media.flv-ssl-port和media.ws-flv-ssl-port配置
|
2026-02-02 14:39:29 +08:00
|
|
|
|
- MediaHttps=8443
|
2026-02-02 15:02:46 +08:00
|
|
|
|
# MediaRtp: RTP代理端口(对应zlmediakit的10000:10000映射)
|
|
|
|
|
|
# 用途:GB28181设备的RTP流传输
|
|
|
|
|
|
# 对应application.yml中的media.rtp-proxy-port配置
|
|
|
|
|
|
# 对应zlmediakit config.ini中的rtp_proxy.port=10000
|
2026-01-26 12:24:50 +08:00
|
|
|
|
- MediaRtp=10000
|
2026-02-02 15:02:46 +08:00
|
|
|
|
# MediaRtmp: RTMP推流端口(对应zlmediakit的1935:1935映射)
|
|
|
|
|
|
# 用途:OBS等推流工具推流地址
|
2026-02-05 17:10:06 +08:00
|
|
|
|
# 示例:rtmp://45.120.103.238:1935/live/123
|
2026-02-02 15:02:46 +08:00
|
|
|
|
# 对应application.yml中的media.rtmp-port配置
|
|
|
|
|
|
# 对应zlmediakit config.ini中的rtmp.port=1935
|
2026-01-26 12:24:50 +08:00
|
|
|
|
- MediaRtmp=1935
|
2026-02-02 15:02:46 +08:00
|
|
|
|
# MediaRtsp: RTSP推流/拉流端口(对应zlmediakit的8554:554映射)
|
|
|
|
|
|
# 用途:RTSP协议的推流和拉流
|
2026-02-05 17:10:06 +08:00
|
|
|
|
# 示例:rtsp://45.120.103.238:8554/live/123
|
2026-02-02 15:02:46 +08:00
|
|
|
|
# 对应application.yml中的media.rtsp-port配置
|
|
|
|
|
|
# 对应zlmediakit config.ini中的rtsp.port=554
|
2026-01-26 12:24:50 +08:00
|
|
|
|
- MediaRtsp=8554
|
|
|
|
|
|
# 录像配置
|
|
|
|
|
|
- RecordPushLive=false
|
|
|
|
|
|
- RecordSip=false
|
2026-01-26 10:08:38 +08:00
|
|
|
|
ports:
|
2026-01-26 16:51:39 +08:00
|
|
|
|
- "18080:18978"
|
2026-01-26 10:08:38 +08:00
|
|
|
|
- "5060:5060/udp"
|
2026-01-26 10:32:31 +08:00
|
|
|
|
# - "6379:6379"
|
2026-01-26 10:08:38 +08:00
|
|
|
|
volumes:
|
|
|
|
|
|
- ./wvp/logs:/home/ruoyi/logs
|
|
|
|
|
|
depends_on:
|
|
|
|
|
|
- ruoyi-redis
|
|
|
|
|
|
- ruoyi-mysql
|
2026-01-26 11:03:53 +08:00
|
|
|
|
- zlmediakit
|
2026-01-26 10:08:38 +08:00
|
|
|
|
links:
|
|
|
|
|
|
- ruoyi-redis
|
|
|
|
|
|
- ruoyi-mysql
|
2026-01-26 11:03:53 +08:00
|
|
|
|
- zlmediakit
|
2026-01-26 10:08:38 +08:00
|
|
|
|
restart: unless-stopped
|
2026-02-02 15:02:46 +08:00
|
|
|
|
# ============================================================================
|
|
|
|
|
|
# ZLMediaKit 流媒体服务器
|
|
|
|
|
|
# ============================================================================
|
|
|
|
|
|
# ZLMediaKit是高性能的流媒体服务器,支持RTMP/RTSP/HLS/HTTP-FLV等多种协议
|
|
|
|
|
|
#
|
|
|
|
|
|
# 端口映射说明(格式:宿主机端口:容器内部端口):
|
|
|
|
|
|
# 1. API访问端口:
|
|
|
|
|
|
# - 9090:80 → HTTP API端口,WVP通过容器内部的80端口访问ZLM API
|
|
|
|
|
|
# - 8443:443 → HTTPS API端口(通常不启用)
|
|
|
|
|
|
#
|
|
|
|
|
|
# 2. 客户端播放端口:
|
|
|
|
|
|
# - 9090:80 → HTTP-FLV/HLS/TS/RTC播放,客户端通过9090端口播放
|
|
|
|
|
|
# - 8443:443 → HTTPS播放端口
|
|
|
|
|
|
#
|
|
|
|
|
|
# 3. 推流/拉流协议端口:
|
|
|
|
|
|
# - 1935:1935 → RTMP推流端口,OBS推流地址:rtmp://IP:1935/live/stream
|
|
|
|
|
|
# - 8554:554 → RTSP推流/拉流端口
|
|
|
|
|
|
# - 10000:10000 → RTP代理端口(TCP/UDP),用于GB28181设备
|
|
|
|
|
|
# - 8000:8000/udp → WebRTC UDP端口
|
|
|
|
|
|
# - 9900:9000/udp → WebRTC UDP端口(注意避免与minio 9000端口冲突)
|
|
|
|
|
|
#
|
|
|
|
|
|
# 配置文件映射:
|
|
|
|
|
|
# - ./zlmediakit/config.ini → /opt/media/conf/config.ini
|
|
|
|
|
|
# 重要配置项:
|
|
|
|
|
|
# * general.mediaServerId=polaris(必须与数据库wvp_media_server表的id字段一致)
|
|
|
|
|
|
# * api.secret=fgVdaI75GcSBPeSBvg8NL7aRrlkCtGPv(必须与ZLM_SERCERT一致)
|
|
|
|
|
|
# * http.port=80(容器内部HTTP端口)
|
|
|
|
|
|
# * rtmp.port=1935(RTMP端口)
|
|
|
|
|
|
# * rtsp.port=554(RTSP端口)
|
|
|
|
|
|
# * rtp_proxy.port=10000(RTP代理端口)
|
|
|
|
|
|
# ============================================================================
|
2026-01-26 10:32:31 +08:00
|
|
|
|
zlmediakit:
|
|
|
|
|
|
container_name: zlmediakit
|
|
|
|
|
|
image: registry.t-aaron.com/zlmediakit/zlmediakit:Release.latest
|
|
|
|
|
|
environment:
|
|
|
|
|
|
- TZ=Asia/Shanghai
|
|
|
|
|
|
ports:
|
2026-02-02 15:02:46 +08:00
|
|
|
|
# RTMP推流端口(容器内部1935映射到宿主机1935)
|
2026-02-05 17:10:06 +08:00
|
|
|
|
# OBS推流地址:rtmp://45.120.103.238:1935/live/streamId
|
2026-02-02 15:02:46 +08:00
|
|
|
|
# 对应config.ini中的rtmp.port=1935
|
|
|
|
|
|
- "1935:1935"
|
|
|
|
|
|
# HTTP端口(容器内部80映射到宿主机9090)
|
|
|
|
|
|
# 用途1:WVP通过http://zlmediakit:80访问ZLM API
|
2026-02-05 17:10:06 +08:00
|
|
|
|
# 用途2:客户端通过http://45.120.103.238:9090播放HTTP-FLV/HLS/TS
|
2026-02-02 15:02:46 +08:00
|
|
|
|
# 对应config.ini中的http.port=80
|
|
|
|
|
|
- "9090:80"
|
|
|
|
|
|
# HTTPS端口(容器内部443映射到宿主机8443)
|
2026-02-05 17:10:06 +08:00
|
|
|
|
# 客户端通过https://45.120.103.238:8443播放
|
2026-02-02 15:02:46 +08:00
|
|
|
|
# 对应config.ini中的http.sslport=443
|
|
|
|
|
|
- "8443:443"
|
|
|
|
|
|
# RTSP端口(容器内部554映射到宿主机8554)
|
2026-02-05 17:10:06 +08:00
|
|
|
|
# RTSP地址:rtsp://45.120.103.238:8554/live/streamId
|
2026-02-02 15:02:46 +08:00
|
|
|
|
# 对应config.ini中的rtsp.port=554
|
|
|
|
|
|
- "8554:554"
|
|
|
|
|
|
# RTP代理端口TCP(容器内部10000映射到宿主机10000)
|
|
|
|
|
|
# 用于GB28181设备的RTP流传输
|
|
|
|
|
|
# 对应config.ini中的rtp_proxy.port=10000
|
|
|
|
|
|
- "10000:10000"
|
|
|
|
|
|
# RTP代理端口UDP(容器内部10000映射到宿主机10000)
|
|
|
|
|
|
- "10000:10000/udp"
|
|
|
|
|
|
# WebRTC UDP端口(容器内部8000映射到宿主机8000)
|
|
|
|
|
|
# 对应config.ini中的rtc.port=8000
|
|
|
|
|
|
- "8000:8000/udp"
|
|
|
|
|
|
# WebRTC UDP端口(容器内部9000映射到宿主机9900)
|
|
|
|
|
|
# 注意:宿主机使用9900避免与minio的9000端口冲突
|
|
|
|
|
|
- "9900:9000/udp"
|
2026-01-26 14:34:32 +08:00
|
|
|
|
volumes:
|
|
|
|
|
|
- ./zlmediakit/config.ini:/opt/media/conf/config.ini
|
2026-01-26 10:32:31 +08:00
|
|
|
|
restart: unless-stopped
|
2026-01-26 13:15:17 +08:00
|
|
|
|
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
|
2026-01-31 13:34:40 +08:00
|
|
|
|
pgvector-db:
|
2026-01-31 15:10:06 +08:00
|
|
|
|
container_name: hyf-pgvector-db
|
2026-01-31 13:34:40 +08:00
|
|
|
|
image: registry.t-aaron.com/pgvector/pgvector:pg16
|
|
|
|
|
|
environment:
|
|
|
|
|
|
POSTGRES_USER: drgraph
|
|
|
|
|
|
POSTGRES_PASSWORD: yingping
|
|
|
|
|
|
POSTGRES_DB: th_agenter
|
|
|
|
|
|
TZ: Asia/Shanghai
|
|
|
|
|
|
ports:
|
2026-01-31 15:10:06 +08:00
|
|
|
|
- "5433:5432"
|
2026-01-31 13:34:40 +08:00
|
|
|
|
volumes:
|
|
|
|
|
|
- ./hyf_backend/pgdata:/var/lib/postgresql/data
|
|
|
|
|
|
- ./hyf_backend/initdb:/docker-entrypoint-initdb.d
|
|
|
|
|
|
restart: unless-stopped
|
|
|
|
|
|
healthcheck:
|
|
|
|
|
|
test: ["CMD-SHELL", "pg_isready -U drgraph -d th_agenter"]
|
|
|
|
|
|
interval: 5s
|
|
|
|
|
|
timeout: 5s
|
|
|
|
|
|
retries: 5
|
|
|
|
|
|
hyf-backend:
|
|
|
|
|
|
container_name: hyf-backend
|
|
|
|
|
|
image: hyf-backend-runtime
|
|
|
|
|
|
build:
|
|
|
|
|
|
context: ./hyf_backend
|
|
|
|
|
|
dockerfile: dockerfile
|
|
|
|
|
|
environment:
|
|
|
|
|
|
- TZ=Asia/Shanghai
|
|
|
|
|
|
- DATABASE_URL=postgresql+asyncpg://drgraph:yingping@pgvector-db:5432/th_agenter
|
|
|
|
|
|
ports:
|
2026-01-31 14:33:09 +08:00
|
|
|
|
- "8800:8000"
|
2026-01-31 13:34:40 +08:00
|
|
|
|
volumes:
|
|
|
|
|
|
- ./hyf_backend/data/uploads:/app/data/uploads
|
|
|
|
|
|
- ./hyf_backend/data/chroma:/app/data/chroma
|
|
|
|
|
|
- ./hyf_backend/logs:/app/webIOs/output/logs
|
|
|
|
|
|
depends_on:
|
|
|
|
|
|
pgvector-db:
|
|
|
|
|
|
condition: service_healthy
|
|
|
|
|
|
restart: unless-stopped
|