Files
wvp-platform/docker/docker-compose.yml

137 lines
3.6 KiB
YAML
Raw Normal View History

version: '3'
services:
2025-04-23 20:34:41 +08:00
polaris-redis:
2025-09-04 14:52:25 +08:00
image: redis:latest # 使用官方Redis镜像
2025-04-23 20:34:41 +08:00
restart: unless-stopped
healthcheck:
test: [ "CMD", "redis-cli", "--raw", "incr", "ping" ]
interval: 15s
timeout: 5s
retries: 10
start_period: 10s
networks:
- media-net
2025-09-04 14:52:25 +08:00
# ports:
# - 6379:6379
volumes:
2025-04-23 20:34:41 +08:00
- ./redis/conf/redis.conf:/opt/polaris/redis/redis.conf
- ./volumes/redis/data/:/data
environment:
TZ: "Asia/Shanghai"
2025-04-23 20:34:41 +08:00
command: redis-server /opt/polaris/redis/redis.conf --appendonly yes
polaris-mysql:
2025-09-04 14:52:25 +08:00
image: mysql:8 # 使用官方MySQL 8镜像
2025-04-23 20:34:41 +08:00
restart: unless-stopped
healthcheck:
test: [ "CMD", "bash", "-c", "cat < /dev/null > /dev/tcp/127.0.0.1/3306" ]
interval: 15s
timeout: 5s
retries: 10
start_period: 10s
networks:
- media-net
environment:
MYSQL_DATABASE: wvp
MYSQL_ROOT_PASSWORD: root
2025-09-04 14:52:25 +08:00
MYSQL_USER: wvp_user
MYSQL_PASSWORD: wvp_password
2025-04-23 20:34:41 +08:00
TZ: Asia/Shanghai
2025-09-04 14:52:25 +08:00
# ports:
# - 3306:3306
2025-04-23 20:34:41 +08:00
volumes:
- ./mysql/conf:/etc/mysql/conf.d
- ./logs/mysql:/logs
- ./volumes/mysql/data:/var/lib/mysql
2025-09-04 14:52:25 +08:00
- ../数据库/2.7.4/初始化-mysql-2.7.4.sql:/docker-entrypoint-initdb.d/init.sql # 初始化SQL脚本目录
2025-04-23 20:34:41 +08:00
command: [
2025-09-04 14:52:25 +08:00
# '--default-authentication-plugin=mysql_native_password',
2025-04-23 20:34:41 +08:00
'--innodb-buffer-pool-size=80M',
'--character-set-server=utf8mb4',
'--collation-server=utf8mb4_general_ci',
'--default-time-zone=+8:00',
'--lower-case-table-names=1'
]
polaris-media:
2025-09-04 14:52:25 +08:00
image: zlmediakit/zlmediakit:master # 替换为官方镜像
restart: always
2025-04-23 20:34:41 +08:00
networks:
- media-net
ports:
2025-04-23 20:34:41 +08:00
- "10935:10935"
- "5540:5540"
- "6080:6080"
volumes:
2025-04-23 20:34:41 +08:00
- ./volumes/video:/opt/media/www/record/
- ./logs/media:/opt/media/log/
2025-09-04 14:52:25 +08:00
- ./media/config.ini:/conf/config.ini
command: [
'MediaServer',
'-c', '/conf/config.ini',
'-l', '0'
]
2025-04-23 20:34:41 +08:00
polaris-wvp:
2025-09-04 14:52:25 +08:00
# 显式指定构建上下文和Dockerfile路径
build:
context: .. # 构建上下文的根路径
dockerfile: ./docker/wvp/Dockerfile # 相对于上下文路径的Dockerfile位置
2025-04-23 20:34:41 +08:00
restart: always
networks:
- media-net
ports:
- "18978:18978"
- "8116:8116/udp"
- "8116:8116/tcp"
depends_on:
- polaris-redis
- polaris-mysql
- polaris-media
links:
- polaris-redis
- polaris-mysql
- polaris-media
volumes:
2025-09-04 14:52:25 +08:00
- ./wvp/wvp/:/opt/ylcx/wvp/
2025-04-23 20:34:41 +08:00
- ./logs/wvp:/opt/wvp/logs/
environment:
TZ: "Asia/Shanghai"
2025-04-23 20:34:41 +08:00
# 本机的IP
SIP_HOST: 127.0.0.1
STREAM_HOST: 127.0.0.1
ZLM_HOST: polaris-media
ZLM_PORT: 6080
ZLM_SERCERT: su6TiedN2rVAmBbIDX0aa0QTiBJLBdcf
REDIS_HOST: polaris-redis
REDIS_PORT: 6379
2025-04-23 20:34:41 +08:00
DATABASE_HOST: polaris-mysql
DATABASE_PORT: 3306
2025-09-04 14:52:25 +08:00
DATABASE_USER: wvp_user
DATABASE_PASSWORD: wvp_password
2025-04-23 20:34:41 +08:00
# 前端跨域配置nginx容器所在物理机IP
NGINX_HOST: http://127.0.0.1:8080
polaris-nginx:
2025-09-04 14:52:25 +08:00
# 显式指定构建上下文和Dockerfile路径
build:
context: .. # 构建上下文的根路径
dockerfile: ./docker/nginx/Dockerfile # 相对于上下文路径的Dockerfile位置
2025-04-23 20:34:41 +08:00
ports:
- "8080:8080"
depends_on:
2025-04-23 20:34:41 +08:00
- polaris-wvp
links:
- polaris-wvp
environment:
WVP_HOST: polaris-wvp
WVP_PORT: 18978
volumes:
- ./nginx/conf/nginx.conf:/etc/nginx/nginx.conf
- ./logs/nginx:/var/log/nginx
networks:
- media-net
networks:
media-net:
driver: bridge