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