From f89672757a48f6ab098f5534cdaf40689b520510 Mon Sep 17 00:00:00 2001 From: xiaoxie <hotcoffie@163.com> Date: 星期三, 01 十二月 2021 20:28:13 +0800 Subject: [PATCH] 1.适配新的gitee地址 2.增加docker-compose相关配置 --- docker/docker-compose.yml | 47 +++++++++++ docker/wvp/Dockerfile | 81 ++++++++++++++++++++ docker/redis/redis.conf | 2 DOCKERFILE | 6 src/main/resources/application-docker.yml | 98 ++++++++++++++++++++++++ 5 files changed, 231 insertions(+), 3 deletions(-) diff --git a/DOCKERFILE b/DOCKERFILE index 28913da..96bc29b 100644 --- a/DOCKERFILE +++ b/DOCKERFILE @@ -28,10 +28,10 @@ cmake curl vim ca-certificates tzdata libmysqlclient-dev redis-server libssl-dev libx264-dev libfaac-dev ffmpeg WORKDIR /home -RUN git clone https://gitee.com/18010473990/maven.git && \ +RUN git clone https://gitee.com/pan648540858/maven.git && \ cp maven/settings.xml /usr/share/maven/conf/ && \ - git clone https://gitee.com/18010473990/wvp-GB28181.git && \ - git clone https://gitee.com/18010473990/wvp-pro-assist.git + git clone https://gitee.com/pan648540858/wvp-GB28181.git && \ + git clone https://gitee.com/pan648540858/wvp-pro-assist.git # 缂栬瘧鍓嶇鐣岄潰 WORKDIR /home/wvp-GB28181/web_src diff --git a/docker/docker-compose.yml b/docker/docker-compose.yml new file mode 100644 index 0000000..524356b --- /dev/null +++ b/docker/docker-compose.yml @@ -0,0 +1,47 @@ +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 + wvp: + build: + context: ./wvp + args: + gitUrl: "https://gitee.com/pan648540858" + zlmGitUrl: "https://gitee.com/xia-chu/ZLMediaKit" + restart: always + ports: + - "5060:5060" + - "5060:5060/udp" + - "18080:18080" + - "80:80" + - "10000:10000/tcp" + - "10000:10000/udp" + - "30000-30500:30000-30500/tcp" + - "30000-30500:30000-30500/udp" + volumes: + - ./video:/opt/media/www/record/ + - ./logs/wvp:/opt/wvp/logs/ + - ./logs/assist:/opt/assist/logs/ + - ./logs/media:/opt/media/log/ + environment: + TZ: "Asia/Shanghai" + # [蹇呴』淇敼] 鏈満鐨処P + WVP_HOST: 172.18.0.61 + WVP_PWD: aseqw_+hiy123 + WVP_DOMAIN: 6101130049 + WVP_ID: 61011300490000000001 + REDIS_HOST: redis + REDIS_PORT: 6379 + REDIS_DB: 6 + REDIS_PWD: root + ASSIST_CONFIG: + WVP_CONFIG: + depends_on: + - redis diff --git a/docker/redis/redis.conf b/docker/redis/redis.conf new file mode 100644 index 0000000..c211f13 --- /dev/null +++ b/docker/redis/redis.conf @@ -0,0 +1,2 @@ +requirepass root +bind 0.0.0.0 diff --git a/docker/wvp/Dockerfile b/docker/wvp/Dockerfile new file mode 100644 index 0000000..ca9ef21 --- /dev/null +++ b/docker/wvp/Dockerfile @@ -0,0 +1,81 @@ +FROM ubuntu:20.04 as build + +ARG gitUrl="https://gitee.com/pan648540858" +ARG zlmGitUrl="https://gitee.com/xia-chu/ZLMediaKit" + +RUN export DEBIAN_FRONTEND=noninteractive &&\ + apt-get update && \ + apt-get install -y --no-install-recommends openjdk-11-jre git maven nodejs npm build-essential \ + cmake ca-certificates openssl ffmpeg &&\ + mkdir -p /opt/wvp/config /opt/wvp/heapdump /opt/wvp/config /opt/assist/config /opt/assist/heapdump /opt/media/www/record + +RUN cd /home && \ + git clone "${gitUrl}/maven.git" && \ + cp maven/settings.xml /usr/share/maven/conf/ + +RUN cd /home && \ + git clone "${gitUrl}/wvp-GB28181-pro.git" +RUN cd /home/wvp-GB28181-pro/web_src && \ + npm install && \ + npm run build +RUN cd /home/wvp-GB28181-pro && \ + mvn clean package -Dmaven.test.skip=true && \ + cp /home/wvp-GB28181-pro/target/*.jar /opt/wvp/ && \ + cp /home/wvp-GB28181-pro/src/main/resources/application-docker.yml /opt/wvp/config/application.yml + +RUN cd /home && \ + git clone "${gitUrl}/wvp-pro-assist.git" +RUN cd /home/wvp-pro-assist && \ + git reset --hard 58f1a79136a55a7cd1593c95b56ddadcc2225b61 && \ + 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-dev.yml /opt/assist/config/application.yml + +RUN cd /home && \ + git clone --depth=1 "${zlmGitUrl}" +RUN cd /home/ZLMediaKit && \ + git submodule update --init --recursive && \ + mkdir -p build release/linux/Release/ &&\ + cd build && \ + cmake -DCMAKE_BUILD_TYPE=Release .. && \ + make -j4 && \ + rm -rf ../release/linux/Release/config.ini && \ + cp -r ../release/linux/Release/* /opt/media + +RUN cd /opt/wvp && \ + echo '#!/bin/bash' > run.sh && \ + echo 'echo ${WVP_IP}' >> run.sh && \ + echo 'echo ${WVP_CONFIG}' >> run.sh && \ + echo 'cd /opt/assist' >> run.sh && \ + echo 'nohup java -Xms128m -Xmx256m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/opt/assist/heapdump/ -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 && \ + echo 'nohup /opt/media/MediaServer -d -m 3 &' >> run.sh && \ + echo 'cd /opt/wvp' >> run.sh && \ + echo 'java -Xms128m -Xmx256m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/opt/wvp/heapdump/ -jar *.jar --spring.config.location=/opt/wvp/config/application.yml --media.record-assist-port=18081 ${WVP_CONFIG}' >> run.sh && \ + chmod +x run.sh + +FROM ubuntu:20.04 + +EXPOSE 18080/tcp +EXPOSE 5060/tcp +EXPOSE 5060/udp +EXPOSE 6379/tcp +EXPOSE 18081/tcp +EXPOSE 80/tcp +EXPOSE 1935/tcp +EXPOSE 554/tcp +EXPOSE 554/udp +EXPOSE 30000-30500/tcp +EXPOSE 30000-30500/udp + +ENV LC_ALL zh_CN.UTF-8 + +RUN export DEBIAN_FRONTEND=noninteractive &&\ + apt-get update && \ + apt-get install -y --no-install-recommends openjdk-11-jre ca-certificates ffmpeg language-pack-zh-hans && \ + apt-get autoremove -y && \ + apt-get clean -y && \ + rm -rf /var/lib/apt/lists/*dic + +COPY --from=build /opt /opt +WORKDIR /opt/wvp +CMD ["sh", "run.sh"] diff --git a/src/main/resources/application-docker.yml b/src/main/resources/application-docker.yml new file mode 100644 index 0000000..ff60f5a --- /dev/null +++ b/src/main/resources/application-docker.yml @@ -0,0 +1,98 @@ +spring: + # REDIS鏁版嵁搴撻厤缃� + redis: + # [蹇呴』淇敼] Redis鏈嶅姟鍣↖P, REDIS瀹夎鍦ㄦ湰鏈虹殑,浣跨敤127.0.0.1 + host: ${REDIS_HOST:127.0.0.1} + # [蹇呴』淇敼] 绔彛鍙� + port: ${REDIS_PORT:6379} + # [鍙�塢 鏁版嵁搴� DB + database: ${REDIS_DB:6} + # [鍙�塢 璁块棶瀵嗙爜,鑻ヤ綘鐨剅edis鏈嶅姟鍣ㄦ病鏈夎缃瘑鐮侊紝灏变笉闇�瑕佺敤瀵嗙爜鍘昏繛鎺� + password: ${REDIS_PWD:} + # [鍙�塢 瓒呮椂鏃堕棿 + 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鐩戝惉鐨凥TTP绔彛, 缃戦〉鍜屾帴鍙h皟鐢ㄩ兘鏄繖涓鍙� +server: + port: 18080 + +# 浣滀负28181鏈嶅姟鍣ㄧ殑閰嶇疆 +sip: + # [蹇呴』淇敼] 鏈満鐨処P + ip: ${WVP_HOST:127.0.0.1} + # [鍙�塢 28181鏈嶅姟鐩戝惉鐨勭鍙� + port: ${WVP_PORT:5060} + # 鏍规嵁鍥芥爣6.1.2涓瀹氾紝domain瀹滈噰鐢↖D缁熶竴缂栫爜鐨勫墠鍗佷綅缂栫爜銆傚浗鏍囬檮褰旸涓畾涔夊墠8浣嶄负涓績缂栫爜锛堢敱鐪佺骇銆佸競绾с�佸尯绾с�佸熀灞傜紪鍙风粍鎴愶紝鍙傜収GB/T 2260-2007锛� + # 鍚庝袱浣嶄负琛屼笟缂栫爜锛屽畾涔夊弬鐓ч檮褰旸.3 + # 3701020049鏍囪瘑灞变笢娴庡崡鍘嗕笅鍖� 淇℃伅琛屼笟鎺ュ叆 + # [鍙�塢 + domain: ${WVP_DOMAIN:4401020049} + # [鍙�塢 + id: ${WVP_ID:44010200492000000001} + # [鍙�塢 榛樿璁惧璁よ瘉瀵嗙爜锛屽悗缁墿灞曚娇鐢ㄨ澶囧崟鐙瘑鐮�, 绉婚櫎瀵嗙爜灏嗕笉杩涜鏍¢獙 + password: ${WVP_PWD:admin123} + +#zlm 榛樿鏈嶅姟鍣ㄩ厤缃� +media: + # [蹇呴』淇敼] zlm鏈嶅姟鍣ㄧ殑鍐呯綉IP + ip: ${ZLM_HOST:127.0.0.1} + # [蹇呴』淇敼] zlm鏈嶅姟鍣ㄧ殑http.port + http-port: ${ZLM_PORT:80} + # [鍙�塢 zlm鏈嶅姟鍣ㄧ殑hook.admin_params=secret + secret: 035c73f7-bb6b-4889-a715-d9eb2d1925cc + # 鍚敤澶氱鍙fā寮�, 澶氱鍙fā寮忎娇鐢ㄧ鍙e尯鍒嗘瘡璺祦锛屽吋瀹规�ф洿濂姐�� 鍗曠鍙d娇鐢ㄦ祦鐨剆src鍖哄垎锛� 鐐规挱瓒呮椂寤鸿浣跨敤澶氱鍙f祴璇� + rtp: + # [鍙�塢 鏄惁鍚敤澶氱鍙fā寮�, 寮�鍚悗浼氬湪portRange鑼冨洿鍐呴�夋嫨绔彛鐢ㄤ簬濯掍綋娴佷紶杈� + enable: true + # [鍙�塢 鍦ㄦ鑼冨洿鍐呴�夋嫨绔彛鐢ㄤ簬濯掍綋娴佷紶杈�, + port-range: 30000,30500 # 绔彛鑼冨洿 + # [鍙�塢 鍥芥爣绾ц仈鍦ㄦ鑼冨洿鍐呴�夋嫨绔彛鍙戦�佸獟浣撴祦, + send-port-range: 30000,30500 # 绔彛鑼冨洿 + # 褰曞儚杈呭姪鏈嶅姟锛� 閮ㄧ讲姝ゆ湇鍔″彲浠ュ疄鐜皕lm褰曞儚鐨勭鐞嗕笌涓嬭浇锛� 0 琛ㄧず涓嶄娇鐢� + record-assist-port: 18081 + sdp-ip: ${sip.ip} + stream-ip: ${sip.ip} +# [鍙�塢 鏃ュ織閰嶇疆, 涓�鑸笉闇�瑕佹敼 +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@" -- Gitblit v1.8.0