尝试docker-compose启动
This commit is contained in:
parent
77c509b1ad
commit
ea11ea62cf
26
docker/assist/Dockerfile
Normal file
26
docker/assist/Dockerfile
Normal file
@ -0,0 +1,26 @@
|
||||
FROM openjdk:11-jre-buster AS build
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update && \
|
||||
DEBIAN_FRONTEND="noninteractive" && \
|
||||
apt-get install -y --no-install-recommends git maven && \
|
||||
cd /home && \
|
||||
git clone https://gitee.com/18010473990/maven.git && \
|
||||
cp maven/settings.xml /usr/share/maven/conf/ && \
|
||||
git clone https://gitee.com/xieyu1989/wvp-pro-assist.git &&\
|
||||
cd /home/wvp-pro-assist
|
||||
mvn clean package -Dmaven.test.skip=true && \
|
||||
cp /home/wvp-pro-assist/target/*.jar /opt/assist/
|
||||
cp /home/wvp-pro-assist/src/main/resources/application-docker.yml /opt/assist/conf/application.yml
|
||||
|
||||
FROM ubuntu:20.04
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
EXPOSE 18081/tcp
|
||||
RUN apt-get update && \
|
||||
DEBIAN_FRONTEND="noninteractive" && \
|
||||
apt-get install -y --no-install-recommends openjdk-11-jre-headless ca-certificates ffmpeg && \
|
||||
apt-get autoremove -y && \
|
||||
apt-get clean -y && \
|
||||
rm -rf /var/lib/apt/lists/*dic
|
||||
COPY --from=build /opt /opt
|
||||
WORKDIR /opt/wvp
|
||||
CMD ["java", "-jar","*.jar","--spring.config.location=/opt/assist/conf/application.yml"]
|
45
docker/docker-compose.yml
Normal file
45
docker/docker-compose.yml
Normal file
@ -0,0 +1,45 @@
|
||||
version: '3'
|
||||
services:
|
||||
redis:
|
||||
image: redis
|
||||
restart: always
|
||||
volumes:
|
||||
- ./redis/redis.conf:/etc/redis/redis_default.conf
|
||||
- ./redis/data/:/data
|
||||
environment:
|
||||
TZ: "Asia/Shanghai"
|
||||
command: redis-server /etc/redis/redis_default.conf --appendonly yes
|
||||
zlm:
|
||||
image: panjjo/zlmediakit
|
||||
restart: always
|
||||
volumes:
|
||||
- ../video:/home/lin/server/ZLMediaKit/release/linux/Debug/www/record/
|
||||
ports:
|
||||
- "80:80"
|
||||
- "10000:10000/tcp"
|
||||
- "10000:10000/udp"
|
||||
- "30000-30500:30000-30500/tcp"
|
||||
- "30000-30500:30000-30500/udp"
|
||||
environment:
|
||||
TZ: "Asia/Shanghai"
|
||||
assist:
|
||||
build:
|
||||
context: ./assist
|
||||
restart: always
|
||||
volumes:
|
||||
- ./conf:/opt/assist/conf
|
||||
- ../video:/home/lin/server/ZLMediaKit/release/linux/Debug/www/record/
|
||||
environment:
|
||||
TZ: "Asia/Shanghai"
|
||||
wvp:
|
||||
build:
|
||||
context: ./wvp
|
||||
restart: always
|
||||
volumes:
|
||||
- ./conf:/opt/wvp/conf
|
||||
ports:
|
||||
- "5060:5060"
|
||||
- "5060:5060/udp"
|
||||
- "18080:18080"
|
||||
environment:
|
||||
TZ: "Asia/Shanghai"
|
2
docker/redis/redis.conf
Normal file
2
docker/redis/redis.conf
Normal file
@ -0,0 +1,2 @@
|
||||
requirepass root
|
||||
bind 0.0.0.0
|
24
docker/wvp/Dockerfile
Normal file
24
docker/wvp/Dockerfile
Normal file
@ -0,0 +1,24 @@
|
||||
FROM ubuntu:20.04 AS build
|
||||
RUN apt-get update && \
|
||||
DEBIAN_FRONTEND="noninteractive" && \
|
||||
apt-get install -y --no-install-recommends openjdk-11-jre-headless git maven nodejs npm &&\
|
||||
cd /home &&\
|
||||
git clone https://gitee.com/18010473990/maven.git && \
|
||||
cp maven/settings.xml /usr/share/maven/conf/ && \
|
||||
git clone https://gitee.com/xieyu1989/wvp-GB28181.git && \
|
||||
cd /home/wvp-GB28181/web_src && \
|
||||
npm install && \
|
||||
npm run build && \
|
||||
mkdir -p /opt/wvp/config && \
|
||||
cd /home/wvp-GB28181 && \
|
||||
mvn clean package -Dmaven.test.skip=true && \
|
||||
cp src/main/resources/application-docker.yml /opt/wvp/conf/application.yml && \
|
||||
cp target/wvp*.jar /opt/wvp/
|
||||
|
||||
FROM openjdk:11-jre-buster
|
||||
EXPOSE 18080/tcp
|
||||
EXPOSE 5060:5060/tcp
|
||||
EXPOSE 5060:5060/udp
|
||||
COPY --from=build /opt /opt
|
||||
WORKDIR /opt/wvp
|
||||
CMD ["java", "-jar","*.jar","--spring.config.location=/opt/wvp/conf/application.yml"]
|
63
docker/zlm/Dockerfile
Normal file
63
docker/zlm/Dockerfile
Normal file
@ -0,0 +1,63 @@
|
||||
FROM ubuntu:18.04 AS build
|
||||
#shell,rtmp,rtsp,rtsps,http,https,rtp
|
||||
EXPOSE 9000/tcp
|
||||
EXPOSE 1935/tcp
|
||||
EXPOSE 554/tcp
|
||||
EXPOSE 322/tcp
|
||||
EXPOSE 80/tcp
|
||||
EXPOSE 443/tcp
|
||||
EXPOSE 10000/udp
|
||||
EXPOSE 10000/tcp
|
||||
|
||||
RUN apt-get update && \
|
||||
DEBIAN_FRONTEND="noninteractive" \
|
||||
apt-get install -y --no-install-recommends \
|
||||
build-essential \
|
||||
cmake \
|
||||
git \
|
||||
curl \
|
||||
vim \
|
||||
ca-certificates \
|
||||
tzdata \
|
||||
libssl-dev \
|
||||
libmysqlclient-dev \
|
||||
libx264-dev \
|
||||
libfaac-dev \
|
||||
libmp4v2-dev && \
|
||||
apt-get autoremove -y && \
|
||||
apt-get clean -y && \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
RUN mkdir -p /opt/media
|
||||
|
||||
WORKDIR /opt/media
|
||||
RUN git clone --depth=1 https://github.com/xia-chu/ZLMediaKit && \
|
||||
cd ZLMediaKit && git submodule update --init --recursive && \
|
||||
mkdir -p build release/linux/Release/
|
||||
|
||||
WORKDIR /opt/media/ZLMediaKit/build
|
||||
RUN cmake -DCMAKE_BUILD_TYPE=Release .. && \
|
||||
make
|
||||
|
||||
FROM ubuntu:18.04
|
||||
LABEL maintainer "Gemfield <gemfield@civilnet.cn>"
|
||||
|
||||
RUN apt-get update && \
|
||||
DEBIAN_FRONTEND="noninteractive" \
|
||||
apt-get install -y --no-install-recommends \
|
||||
vim \
|
||||
ca-certificates \
|
||||
tzdata \
|
||||
libssl-dev \
|
||||
libx264-dev \
|
||||
libfaac-dev \
|
||||
ffmpeg \
|
||||
libmp4v2-dev && \
|
||||
apt-get autoremove -y && \
|
||||
apt-get clean -y && \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
WORKDIR /opt/media/bin/
|
||||
COPY --from=build /opt/media/ZLMediaKit/release/linux/Release/MediaServer /opt/media/bin/MediaServer
|
||||
ENV PATH /opt/media/bin:$PATH
|
||||
CMD MediaServer
|
97
src/main/resources/application-docker.yml
Normal file
97
src/main/resources/application-docker.yml
Normal file
@ -0,0 +1,97 @@
|
||||
spring:
|
||||
# REDIS数据库配置
|
||||
redis:
|
||||
# [必须修改] Redis服务器IP, REDIS安装在本机的,使用127.0.0.1
|
||||
host: redis
|
||||
# [必须修改] 端口号
|
||||
port: 6379
|
||||
# [可选] 数据库 DB
|
||||
database: 6
|
||||
# [可选] 访问密码,若你的redis服务器没有设置密码,就不需要用密码去连接
|
||||
password: root
|
||||
# [可选] 超时时间
|
||||
timeout: 10000
|
||||
# [可选] jdbc数据库配置, 项目使用sqlite作为数据库,一般不需要配置
|
||||
datasource:
|
||||
# 使用mysql 打开23-28行注释, 删除29-36行
|
||||
# name: wvp
|
||||
# url: jdbc:mysql://127.0.0.1:3306/wvp?useUnicode=true&characterEncoding=UTF8&rewriteBatchedStatements=true
|
||||
# username:
|
||||
# password:
|
||||
# type: com.alibaba.druid.pool.DruidDataSource
|
||||
# driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
name: eiot
|
||||
url: jdbc:sqlite::resource:wvp.sqlite
|
||||
username:
|
||||
password:
|
||||
type: com.alibaba.druid.pool.DruidDataSource
|
||||
driver-class-name: org.sqlite.JDBC
|
||||
max-active: 1
|
||||
min-idle: 1
|
||||
|
||||
# [可选] WVP监听的HTTP端口, 网页和接口调用都是这个端口
|
||||
server:
|
||||
port: 18080
|
||||
|
||||
# 作为28181服务器的配置
|
||||
sip:
|
||||
# [必须修改] 本机的IP
|
||||
ip: ${WVP_HOST:127.0.0.1}
|
||||
# [可选] 28181服务监听的端口
|
||||
port: 5060
|
||||
# 根据国标6.1.2中规定,domain宜采用ID统一编码的前十位编码。国标附录D中定义前8位为中心编码(由省级、市级、区级、基层编号组成,参照GB/T 2260-2007)
|
||||
# 后两位为行业编码,定义参照附录D.3
|
||||
# 3701020049标识山东济南历下区 信息行业接入
|
||||
# [可选]
|
||||
domain: 6101130049
|
||||
# [可选]
|
||||
id: 61011300490000000001
|
||||
# [可选] 默认设备认证密码,后续扩展使用设备单独密码, 移除密码将不进行校验
|
||||
password: admin123
|
||||
|
||||
#zlm 默认服务器配置
|
||||
media:
|
||||
# [必须修改] zlm服务器的内网IP
|
||||
ip: zlm
|
||||
# [必须修改] zlm服务器的http.port
|
||||
http-port: 80
|
||||
# [可选] zlm服务器的hook.admin_params=secret
|
||||
secret: 035c73f7-bb6b-4889-a715-d9eb2d1925cc
|
||||
# 启用多端口模式, 多端口模式使用端口区分每路流,兼容性更好。 单端口使用流的ssrc区分, 点播超时建议使用多端口测试
|
||||
rtp:
|
||||
# [可选] 是否启用多端口模式, 开启后会在portRange范围内选择端口用于媒体流传输
|
||||
enable: true
|
||||
# [可选] 在此范围内选择端口用于媒体流传输,
|
||||
port-range: 30000,30500 # 端口范围
|
||||
# [可选] 国标级联在此范围内选择端口发送媒体流,
|
||||
send-port-range: 30000,30500 # 端口范围
|
||||
# 录像辅助服务, 部署此服务可以实现zlm录像的管理与下载, 0 表示不使用
|
||||
record-assist-port: 18081
|
||||
|
||||
# [可选] 日志配置, 一般不需要改
|
||||
logging:
|
||||
file:
|
||||
name: logs/wvp.log
|
||||
max-history: 30
|
||||
max-size: 10MB
|
||||
total-size-cap: 300MB
|
||||
level:
|
||||
com.genersoft.iot: debug
|
||||
com.genersoft.iot.vmp.storager.dao: info
|
||||
com.genersoft.iot.vmp.gb28181: info
|
||||
|
||||
# [根据业务需求配置]
|
||||
user-settings:
|
||||
# 推流直播是否录制
|
||||
record-push-live: true
|
||||
auto-apply-play: false
|
||||
|
||||
# 在线文档: swagger-ui(生产环境建议关闭)
|
||||
swagger-ui:
|
||||
enabled: true
|
||||
|
||||
# 版本信息, 不需修改
|
||||
version:
|
||||
version: "@project.version@"
|
||||
description: "@project.description@"
|
||||
artifact-id: "@project.artifactId@"
|
Loading…
Reference in New Issue
Block a user