Commit 460bd4f9aa9225fbf25175b7287f7debfc87c9c6
1 parent
35342688
尝试docker-compose启动
Showing
5 changed files
with
80 additions
and
230 deletions
docker/assist/Dockerfile deleted
100644 → 0
| 1 | -FROM openjdk:11-jre-buster AS build | |
| 2 | -ARG DEBIAN_FRONTEND=noninteractive | |
| 3 | -RUN apt-get update && \ | |
| 4 | - DEBIAN_FRONTEND="noninteractive" && \ | |
| 5 | - apt-get install -y --no-install-recommends git maven && \ | |
| 6 | - cd /home && \ | |
| 7 | - git clone https://gitee.com/18010473990/maven.git && \ | |
| 8 | - cp maven/settings.xml /usr/share/maven/conf/ && \ | |
| 9 | - git clone https://gitee.com/xieyu1989/wvp-pro-assist.git &&\ | |
| 10 | - cd /home/wvp-pro-assist | |
| 11 | - mvn clean package -Dmaven.test.skip=true && \ | |
| 12 | - cp /home/wvp-pro-assist/target/*.jar /opt/assist/ | |
| 13 | - cp /home/wvp-pro-assist/src/main/resources/application-docker.yml /opt/assist/conf/application.yml | |
| 14 | - | |
| 15 | -FROM ubuntu:20.04 | |
| 16 | -ARG DEBIAN_FRONTEND=noninteractive | |
| 17 | -EXPOSE 18081/tcp | |
| 18 | -RUN apt-get update && \ | |
| 19 | - DEBIAN_FRONTEND="noninteractive" && \ | |
| 20 | - apt-get install -y --no-install-recommends openjdk-11-jre-headless ca-certificates ffmpeg && \ | |
| 21 | - apt-get autoremove -y && \ | |
| 22 | - apt-get clean -y && \ | |
| 23 | - rm -rf /var/lib/apt/lists/*dic | |
| 24 | -COPY --from=build /opt /opt | |
| 25 | -WORKDIR /opt/wvp | |
| 26 | -CMD ["java", "-jar","*.jar","--spring.config.location=/opt/assist/conf/application.yml"] |
docker/docker-compose.yml
| ... | ... | @@ -9,37 +9,23 @@ services: |
| 9 | 9 | environment: |
| 10 | 10 | TZ: "Asia/Shanghai" |
| 11 | 11 | command: redis-server /etc/redis/redis_default.conf --appendonly yes |
| 12 | - zlm: | |
| 13 | - image: panjjo/zlmediakit | |
| 14 | - restart: always | |
| 15 | - volumes: | |
| 16 | - - ../video:/home/lin/server/ZLMediaKit/release/linux/Debug/www/record/ | |
| 17 | - ports: | |
| 18 | - - "80:80" | |
| 19 | - - "10000:10000/tcp" | |
| 20 | - - "10000:10000/udp" | |
| 21 | - - "30000-30500:30000-30500/tcp" | |
| 22 | - - "30000-30500:30000-30500/udp" | |
| 23 | - environment: | |
| 24 | - TZ: "Asia/Shanghai" | |
| 25 | - assist: | |
| 26 | - build: | |
| 27 | - context: ./assist | |
| 28 | - restart: always | |
| 29 | - volumes: | |
| 30 | - - ./conf:/opt/assist/conf | |
| 31 | - - ../video:/home/lin/server/ZLMediaKit/release/linux/Debug/www/record/ | |
| 32 | - environment: | |
| 33 | - TZ: "Asia/Shanghai" | |
| 34 | 12 | wvp: |
| 35 | 13 | build: |
| 36 | 14 | context: ./wvp |
| 37 | 15 | restart: always |
| 38 | - volumes: | |
| 39 | - - ./conf:/opt/wvp/conf | |
| 40 | 16 | ports: |
| 41 | 17 | - "5060:5060" |
| 42 | 18 | - "5060:5060/udp" |
| 43 | 19 | - "18080:18080" |
| 20 | + - "80:80" | |
| 21 | + - "10000:10000/tcp" | |
| 22 | + - "10000:10000/udp" | |
| 23 | + - "30000-30500:30000-30500/tcp" | |
| 24 | + - "30000-30500:30000-30500/udp" | |
| 25 | + volumes: | |
| 26 | + - ./video:/opt/media/www/record/ | |
| 44 | 27 | environment: |
| 45 | 28 | TZ: "Asia/Shanghai" |
| 29 | + WVP_HOST: 172.18.0.61 | |
| 30 | + depends_on: | |
| 31 | + - redis | ... | ... |
docker/wvp/Dockerfile
| 1 | 1 | FROM ubuntu:20.04 AS build |
| 2 | -RUN apt-get update && \ | |
| 3 | - DEBIAN_FRONTEND="noninteractive" && \ | |
| 4 | - apt-get install -y --no-install-recommends openjdk-11-jre-headless git maven nodejs npm &&\ | |
| 5 | - cd /home &&\ | |
| 6 | - git clone https://gitee.com/18010473990/maven.git && \ | |
| 7 | - cp maven/settings.xml /usr/share/maven/conf/ && \ | |
| 8 | - git clone https://gitee.com/xieyu1989/wvp-GB28181.git && \ | |
| 9 | - cd /home/wvp-GB28181/web_src && \ | |
| 10 | - npm install && \ | |
| 11 | - npm run build && \ | |
| 12 | - mkdir -p /opt/wvp/config && \ | |
| 13 | - cd /home/wvp-GB28181 && \ | |
| 14 | - mvn clean package -Dmaven.test.skip=true && \ | |
| 15 | - cp src/main/resources/application-docker.yml /opt/wvp/conf/application.yml && \ | |
| 16 | - cp target/wvp*.jar /opt/wvp/ | |
| 17 | - | |
| 18 | -FROM openjdk:11-jre-buster | |
| 2 | + | |
| 3 | +RUN export DEBIAN_FRONTEND=noninteractive &&\ | |
| 4 | + apt-get update && \ | |
| 5 | + apt-get install -y --no-install-recommends openjdk-11-jre git maven nodejs npm build-essential \ | |
| 6 | + cmake ca-certificates openssl ffmpeg && \ | |
| 7 | + | |
| 8 | + cd /home && \ | |
| 9 | + git clone https://gitee.com/18010473990/maven.git && \ | |
| 10 | + cp maven/settings.xml /usr/share/maven/conf/ && \ | |
| 11 | + git clone https://gitee.com/18010473990/wvp-GB28181.git && \ | |
| 12 | + git clone https://gitee.com/18010473990/wvp-pro-assist.git && \ | |
| 13 | + git clone --depth=1 https://gitee.com/xia-chu/ZLMediaKit && \ | |
| 14 | + mkdir -p /opt/wvp/config /opt/assist/config /opt/media/www/record && \ | |
| 15 | + | |
| 16 | + cd /home/wvp-GB28181/web_src && \ | |
| 17 | + npm install && \ | |
| 18 | + npm run build && \ | |
| 19 | + | |
| 20 | + cd /home/wvp-GB28181 && \ | |
| 21 | + mvn clean package -Dmaven.test.skip=true && \ | |
| 22 | + cp /home/wvp-GB28181/target/*.jar /opt/wvp/ && \ | |
| 23 | + cp /home/wvp-GB28181/src/main/resources/application-dev.yml /opt/wvp/config/application.yml && \ | |
| 24 | + | |
| 25 | + cd /home/wvp-pro-assist && \ | |
| 26 | + mvn clean package -Dmaven.test.skip=true && \ | |
| 27 | + cp /home/wvp-pro-assist/target/*.jar /opt/assist/ && \ | |
| 28 | + cp /home/wvp-pro-assist/src/main/resources/application-dev.yml /opt/assist/config/application.yml && \ | |
| 29 | + | |
| 30 | + cd /home/ZLMediaKit && \ | |
| 31 | + git submodule update --init --recursive && \ | |
| 32 | + mkdir -p build release/linux/Release/ &&\ | |
| 33 | + cd build && \ | |
| 34 | + cmake -DCMAKE_BUILD_TYPE=Release .. && \ | |
| 35 | + make -j4 && \ | |
| 36 | + rm -rf ../release/linux/Release/config.ini && \ | |
| 37 | + cp -r ../release/linux/Release/* /opt/media && \ | |
| 38 | + | |
| 39 | + cd /opt/wvp && \ | |
| 40 | + echo '#!/bin/bash' > run.sh && \ | |
| 41 | + echo 'echo ${WVP_IP}' >> run.sh && \ | |
| 42 | + echo 'echo ${WVP_CONFIG}' >> run.sh && \ | |
| 43 | + echo 'redis-server --daemonize yes --bind 0.0.0.0' >> run.sh && \ | |
| 44 | + echo 'cd /opt/assist' >> run.sh && \ | |
| 45 | + echo 'nohup java -jar *.jar --spring.config.location=/opt/assist/config/application.yml --userSettings.record=/opt/media/www/record/ --media.record-assist-port=18081 ${ASSIST_CONFIG} &' >> run.sh && \ | |
| 46 | + echo 'nohup /opt/media/MediaServer -d -m 3 &' >> run.sh && \ | |
| 47 | + echo 'cd /opt/wvp' >> run.sh && \ | |
| 48 | + echo 'java -jar *.jar --spring.config.location=/opt/wvp/config/application.yml --media.record-assist-port=18081 ${WVP_CONFIG}' >> run.sh && \ | |
| 49 | + chmod +x run.sh | |
| 50 | + | |
| 51 | +FROM ubuntu:20.04 | |
| 52 | + | |
| 19 | 53 | EXPOSE 18080/tcp |
| 20 | -EXPOSE 5060:5060/tcp | |
| 21 | -EXPOSE 5060:5060/udp | |
| 54 | +EXPOSE 5060/tcp | |
| 55 | +EXPOSE 5060/udp | |
| 56 | +EXPOSE 6379/tcp | |
| 57 | +EXPOSE 18081/tcp | |
| 58 | +EXPOSE 80/tcp | |
| 59 | +EXPOSE 1935/tcp | |
| 60 | +EXPOSE 554/tcp | |
| 61 | +EXPOSE 554/udp | |
| 62 | +EXPOSE 30000-30500/tcp | |
| 63 | +EXPOSE 30000-30500/udp | |
| 64 | + | |
| 65 | +RUN export DEBIAN_FRONTEND=noninteractive &&\ | |
| 66 | + apt-get update && \ | |
| 67 | + apt-get install -y --no-install-recommends openjdk-11-jre ca-certificates ffmpeg language-pack-zh-hans && \ | |
| 68 | + apt-get autoremove -y && \ | |
| 69 | + apt-get clean -y && \ | |
| 70 | + rm -rf /var/lib/apt/lists/*dic | |
| 71 | + | |
| 22 | 72 | COPY --from=build /opt /opt |
| 23 | 73 | WORKDIR /opt/wvp |
| 24 | -CMD ["java", "-jar","*.jar","--spring.config.location=/opt/wvp/conf/application.yml"] | |
| 74 | +CMD ["sh", "run.sh"] | ... | ... |
docker/zlm/Dockerfile deleted
100644 → 0
| 1 | -FROM ubuntu:18.04 AS build | |
| 2 | -#shell,rtmp,rtsp,rtsps,http,https,rtp | |
| 3 | -EXPOSE 9000/tcp | |
| 4 | -EXPOSE 1935/tcp | |
| 5 | -EXPOSE 554/tcp | |
| 6 | -EXPOSE 322/tcp | |
| 7 | -EXPOSE 80/tcp | |
| 8 | -EXPOSE 443/tcp | |
| 9 | -EXPOSE 10000/udp | |
| 10 | -EXPOSE 10000/tcp | |
| 11 | - | |
| 12 | -RUN apt-get update && \ | |
| 13 | - DEBIAN_FRONTEND="noninteractive" \ | |
| 14 | - apt-get install -y --no-install-recommends \ | |
| 15 | - build-essential \ | |
| 16 | - cmake \ | |
| 17 | - git \ | |
| 18 | - curl \ | |
| 19 | - vim \ | |
| 20 | - ca-certificates \ | |
| 21 | - tzdata \ | |
| 22 | - libssl-dev \ | |
| 23 | - libmysqlclient-dev \ | |
| 24 | - libx264-dev \ | |
| 25 | - libfaac-dev \ | |
| 26 | - libmp4v2-dev && \ | |
| 27 | - apt-get autoremove -y && \ | |
| 28 | - apt-get clean -y && \ | |
| 29 | - rm -rf /var/lib/apt/lists/* | |
| 30 | - | |
| 31 | -RUN mkdir -p /opt/media | |
| 32 | - | |
| 33 | -WORKDIR /opt/media | |
| 34 | -RUN git clone --depth=1 https://github.com/xia-chu/ZLMediaKit && \ | |
| 35 | - cd ZLMediaKit && git submodule update --init --recursive && \ | |
| 36 | - mkdir -p build release/linux/Release/ | |
| 37 | - | |
| 38 | -WORKDIR /opt/media/ZLMediaKit/build | |
| 39 | -RUN cmake -DCMAKE_BUILD_TYPE=Release .. && \ | |
| 40 | - make | |
| 41 | - | |
| 42 | -FROM ubuntu:18.04 | |
| 43 | -LABEL maintainer "Gemfield <gemfield@civilnet.cn>" | |
| 44 | - | |
| 45 | -RUN apt-get update && \ | |
| 46 | - DEBIAN_FRONTEND="noninteractive" \ | |
| 47 | - apt-get install -y --no-install-recommends \ | |
| 48 | - vim \ | |
| 49 | - ca-certificates \ | |
| 50 | - tzdata \ | |
| 51 | - libssl-dev \ | |
| 52 | - libx264-dev \ | |
| 53 | - libfaac-dev \ | |
| 54 | - ffmpeg \ | |
| 55 | - libmp4v2-dev && \ | |
| 56 | - apt-get autoremove -y && \ | |
| 57 | - apt-get clean -y && \ | |
| 58 | - rm -rf /var/lib/apt/lists/* | |
| 59 | - | |
| 60 | -WORKDIR /opt/media/bin/ | |
| 61 | -COPY --from=build /opt/media/ZLMediaKit/release/linux/Release/MediaServer /opt/media/bin/MediaServer | |
| 62 | -ENV PATH /opt/media/bin:$PATH | |
| 63 | -CMD MediaServer |
src/main/resources/application-docker.yml deleted
100644 → 0
| 1 | -spring: | |
| 2 | - # REDIS数据库配置 | |
| 3 | - redis: | |
| 4 | - # [必须修改] Redis服务器IP, REDIS安装在本机的,使用127.0.0.1 | |
| 5 | - host: redis | |
| 6 | - # [必须修改] 端口号 | |
| 7 | - port: 6379 | |
| 8 | - # [可选] 数据库 DB | |
| 9 | - database: 6 | |
| 10 | - # [可选] 访问密码,若你的redis服务器没有设置密码,就不需要用密码去连接 | |
| 11 | - password: root | |
| 12 | - # [可选] 超时时间 | |
| 13 | - timeout: 10000 | |
| 14 | - # [可选] jdbc数据库配置, 项目使用sqlite作为数据库,一般不需要配置 | |
| 15 | - datasource: | |
| 16 | - # 使用mysql 打开23-28行注释, 删除29-36行 | |
| 17 | - # name: wvp | |
| 18 | - # url: jdbc:mysql://127.0.0.1:3306/wvp?useUnicode=true&characterEncoding=UTF8&rewriteBatchedStatements=true | |
| 19 | - # username: | |
| 20 | - # password: | |
| 21 | - # type: com.alibaba.druid.pool.DruidDataSource | |
| 22 | - # driver-class-name: com.mysql.cj.jdbc.Driver | |
| 23 | - name: eiot | |
| 24 | - url: jdbc:sqlite::resource:wvp.sqlite | |
| 25 | - username: | |
| 26 | - password: | |
| 27 | - type: com.alibaba.druid.pool.DruidDataSource | |
| 28 | - driver-class-name: org.sqlite.JDBC | |
| 29 | - max-active: 1 | |
| 30 | - min-idle: 1 | |
| 31 | - | |
| 32 | -# [可选] WVP监听的HTTP端口, 网页和接口调用都是这个端口 | |
| 33 | -server: | |
| 34 | - port: 18080 | |
| 35 | - | |
| 36 | -# 作为28181服务器的配置 | |
| 37 | -sip: | |
| 38 | - # [必须修改] 本机的IP | |
| 39 | - ip: ${WVP_HOST:127.0.0.1} | |
| 40 | - # [可选] 28181服务监听的端口 | |
| 41 | - port: 5060 | |
| 42 | - # 根据国标6.1.2中规定,domain宜采用ID统一编码的前十位编码。国标附录D中定义前8位为中心编码(由省级、市级、区级、基层编号组成,参照GB/T 2260-2007) | |
| 43 | - # 后两位为行业编码,定义参照附录D.3 | |
| 44 | - # 3701020049标识山东济南历下区 信息行业接入 | |
| 45 | - # [可选] | |
| 46 | - domain: 6101130049 | |
| 47 | - # [可选] | |
| 48 | - id: 61011300490000000001 | |
| 49 | - # [可选] 默认设备认证密码,后续扩展使用设备单独密码, 移除密码将不进行校验 | |
| 50 | - password: admin123 | |
| 51 | - | |
| 52 | -#zlm 默认服务器配置 | |
| 53 | -media: | |
| 54 | - # [必须修改] zlm服务器的内网IP | |
| 55 | - ip: zlm | |
| 56 | - # [必须修改] zlm服务器的http.port | |
| 57 | - http-port: 80 | |
| 58 | - # [可选] zlm服务器的hook.admin_params=secret | |
| 59 | - secret: 035c73f7-bb6b-4889-a715-d9eb2d1925cc | |
| 60 | - # 启用多端口模式, 多端口模式使用端口区分每路流,兼容性更好。 单端口使用流的ssrc区分, 点播超时建议使用多端口测试 | |
| 61 | - rtp: | |
| 62 | - # [可选] 是否启用多端口模式, 开启后会在portRange范围内选择端口用于媒体流传输 | |
| 63 | - enable: true | |
| 64 | - # [可选] 在此范围内选择端口用于媒体流传输, | |
| 65 | - port-range: 30000,30500 # 端口范围 | |
| 66 | - # [可选] 国标级联在此范围内选择端口发送媒体流, | |
| 67 | - send-port-range: 30000,30500 # 端口范围 | |
| 68 | - # 录像辅助服务, 部署此服务可以实现zlm录像的管理与下载, 0 表示不使用 | |
| 69 | - record-assist-port: 18081 | |
| 70 | - | |
| 71 | -# [可选] 日志配置, 一般不需要改 | |
| 72 | -logging: | |
| 73 | - file: | |
| 74 | - name: logs/wvp.log | |
| 75 | - max-history: 30 | |
| 76 | - max-size: 10MB | |
| 77 | - total-size-cap: 300MB | |
| 78 | - level: | |
| 79 | - com.genersoft.iot: debug | |
| 80 | - com.genersoft.iot.vmp.storager.dao: info | |
| 81 | - com.genersoft.iot.vmp.gb28181: info | |
| 82 | - | |
| 83 | -# [根据业务需求配置] | |
| 84 | -user-settings: | |
| 85 | - # 推流直播是否录制 | |
| 86 | - record-push-live: true | |
| 87 | - auto-apply-play: false | |
| 88 | - | |
| 89 | -# 在线文档: swagger-ui(生产环境建议关闭) | |
| 90 | -swagger-ui: | |
| 91 | - enabled: true | |
| 92 | - | |
| 93 | -# 版本信息, 不需修改 | |
| 94 | -version: | |
| 95 | - version: "@project.version@" | |
| 96 | - description: "@project.description@" | |
| 97 | - artifact-id: "@project.artifactId@" |