From 77bf85342b9d5a7954c85f05a54e6a46d41f0bf6 Mon Sep 17 00:00:00 2001
From: 648540858 <18010473990@163.com>
Date: 星期四, 02 九月 2021 15:10:47 +0800
Subject: [PATCH] 更新docker,更新readme

---
 src/main/java/com/genersoft/iot/vmp/gb28181/transmit/request/impl/RegisterRequestProcessor.java |    9 +--
 DOCKERFILE                                                                                      |  131 ++++++++++++++++++++++++++++++++++++++-----
 src/main/resources/application-dev.yml                                                          |    2 
 README.md                                                                                       |    6 ++
 4 files changed, 125 insertions(+), 23 deletions(-)

diff --git a/DOCKERFILE b/DOCKERFILE
index cc86e27..a87279e 100644
--- a/DOCKERFILE
+++ b/DOCKERFILE
@@ -1,32 +1,131 @@
-FROM ubuntu:19.10
+FROM ubuntu:20.04 AS build
+
+ARG DEBIAN_FRONTEND=noninteractive
+ENV TZ=Asia/Shanghai
 
 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
 
 # 浣跨敤浜嗚嚜宸辩殑settings.xml浣滀负maven鐨勬簮,鍔犲揩鎵撳寘閫熷害
 RUN apt-get update && \
-         apt-get install -y --no-install-recommends openjdk-11-jre git maven nodejs npm && \
-         cd /home && \
-         git clone https://github.com/648540858/wiki.git && \
-         cp wiki/config/settings.xml /usr/share/maven/conf/ && \
-         git clone https://github.com/648540858/wvp-GB28181.git && \
-         cd /home/wvp-GB28181/web_src && \
-         npm install npm -g && \
-         npm install nrm -g && \
-         nrm use taobao && \
-         npm install && \
+        DEBIAN_FRONTEND="noninteractive" && \
+         apt-get install -y --no-install-recommends openjdk-11-jre git maven nodejs npm build-essential tcl language-pack-zh-hans \
+         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 && \
+         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
+         # 缂栬瘧鍓嶇鐣岄潰
+WORKDIR /home/wvp-GB28181/web_src
+
+RUN      npm install && \
          npm run build && \
          mkdir -p /opt/wvp/config && \
-         cd /home/wvp-GB28181 && \
-         mvn compile && \
+         mkdir -p /opt/assist/config && \
+         cp /home/wvp-GB28181/src/main/resources/application-dev.yml /opt/wvp/config/application.yml && \
+         cp /home/wvp-pro-assist/src/main/resources/application-dev.yml /opt/assist/config/application.yml
+
+RUN      npm install && \
+         npm run build && \
+         mkdir -p /opt/wvp/config && \
+         cp /home/wvp-GB28181/src/main/resources/application-dev.yml /opt/wvp/config/application.yml
+
+         # wvp鎵撳寘
+WORKDIR /home/wvp-GB28181
+RUN      mvn compile && \
          mvn package && \
-         cp /home/wvp-GB28181/target/wvp-1.5.10.RELEASE.jar /opt/wvp/ && \
-         rm -rf /home/wiki && \
+         cp /home/wvp-GB28181/target/wvp*.jar /opt/wvp/
+
+         # wvp 褰曞儚绠$悊鎵撳寘
+WORKDIR /home/wvp-pro-assist
+RUN      mvn compile && \
+         mvn package && \
+         cp /home/wvp-pro-assist/target/*.jar /opt/assist/
+
+         # zlm鎵撳寘
+WORKDIR /home
+RUN     mkdir -p /opt/media && \
+        git clone --depth=1 https://gitee.com/xia-chu/ZLMediaKit && \
+        cd ZLMediaKit && git submodule update --init --recursive && \
+        mkdir -p build release/linux/Release/ &&\
+        cd build && \
+        cmake -DCMAKE_BUILD_TYPE=Release .. && \
+        make -j4 && \
+        cp -r ../release/linux/Release/* /opt/media && \
+        mkdir -p /opt/media/www/record
+
+
+         # 娓呯悊
+ RUN     rm -rf /home/wiki && \
          rm -rf /home/wvp-GB28181 && \
          apt-get autoremove -y git maven nodejs npm && \
          apt-get clean -y && \
          rm -rf /var/lib/apt/lists/*dic
 
 WORKDIR /opt/wvp
+RUN     echo '#!/bin/bash' > run.sh && \
+        echo 'echo ${WVP_IP}' >> run.sh && \
+        echo 'echo ${WVP_CONFIG}' >> run.sh && \
+        echo 'redis-server --daemonize yes --bind 0.0.0.0' >> run.sh && \
+        echo 'cd /opt/assist' >> run.sh && \
+        echo 'nohup java -jar *.jar --userSettings.record=/opt/media/www/record/ &' >> run.sh && \
+        echo 'nohup /opt/media/MediaServer -d -m 3 &' >> run.sh && \
+        echo 'cd /opt/wvp' >> run.sh && \
+        echo 'if [${WVP_CONFIG}]; then' >> run.sh && \
+        echo '        java -jar *.jar --spring.config.location=/opt/wvp/config/application.yml --media.record-assist-port=18081 ${WVP_CONFIG}' >> run.sh && \
+        echo 'else' >> run.sh && \
+        echo '        java -jar *.jar --spring.config.location=/opt/wvp/config/application.yml --media.record-assist-port=18081 --media.ip=127.0.0.1 --media.sdp-ip=${WVP_IP} --sip.ip=${WVP_IP} --media.stream-ip=${WVP_IP}' >> run.sh  && \
+        echo 'fi' >> run.sh
+RUN chmod +x run.sh
 
-CMD java -jar wvp-1.5.10.RELEASE.jar --spring.config.location=/opt/wvp/config/application.yml
\ No newline at end of file
+FROM ubuntu:20.04
+
+ARG DEBIAN_FRONTEND=noninteractive
+ENV TZ=Asia/Shanghai
+
+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 apt-get update && \
+        DEBIAN_FRONTEND="noninteractive" && \
+        apt-get install -y --no-install-recommends openjdk-11-jre tcl language-pack-zh-hans \
+        ca-certificates  tzdata libmysqlclient21  redis-server libssl1.1 libx264-155 libfaac0 ffmpeg && \
+        apt-get autoremove -y && \
+        apt-get clean -y && \
+        rm -rf /var/lib/apt/lists/*dic
+
+WORKDIR /opt/wvp
+COPY --from=build /opt /opt
+CMD ["sh", "run.sh"]
\ No newline at end of file
diff --git a/README.md b/README.md
index 09d7b13..09faa35 100644
--- a/README.md
+++ b/README.md
@@ -13,7 +13,13 @@
 娴佸獟浣撴湇鍔″熀浜嶼LMediaKit-https://github.com/xiongziliang/ZLMediaKit
 
 鍓嶇椤甸潰鍩轰簬MediaServerUI杩涜淇敼.  
+# 蹇�熶綋楠�
+```shell
+docker pull 648540858/wvp_pro
 
+docker run  --env WVP_IP="浣犵殑IP" -it -p 18080:18080 -p 30000-30500:30000-30500/udp -p 30000-30500:30000-30500/tcp -p 80:80 -p 5060:5060 -p 5060:5060/udp wvp_pro
+```
+docker浣跨敤璇︽儏鏌ョ湅锛歔https://hub.docker.com/r/648540858/wvp_pro](https://hub.docker.com/r/648540858/wvp_pro)
 # 搴旂敤鍦烘櫙锛�
 鏀寔娴忚鍣ㄦ棤鎻掍欢鎾斁鎽勫儚澶磋棰戙��  
 鏀寔鎽勫儚鏈恒�佸钩鍙般�丯VR绛夎澶囨帴鍏ャ�� 
diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/request/impl/RegisterRequestProcessor.java b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/request/impl/RegisterRequestProcessor.java
index 064d023..4034d57 100644
--- a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/request/impl/RegisterRequestProcessor.java
+++ b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/request/impl/RegisterRequestProcessor.java
@@ -87,12 +87,8 @@
 
 			// 鏈惡甯︽巿鏉冨ご鎴栬�呭瘑鐮侀敊璇� 鍥炲401
 			if (authorhead == null ) {
-				
-				if (authorhead == null) {
-					logger.info("[{}] 鏈惡甯︽巿鏉冨ご 鍥炲401", requestAddress);
-				} else if (!passwordCorrect) {
-					logger.info("[{}] 瀵嗙爜閿欒 鍥炲401", requestAddress);
-				}
+
+				logger.info("[{}] 鏈惡甯︽巿鏉冨ご 鍥炲401", requestAddress);
 				response = getMessageFactory().createResponse(Response.UNAUTHORIZED, request);
 				new DigestServerAuthenticationHelper().generateChallenge(getHeaderFactory(), response, sipConfig.getDomain());
 			}else {
@@ -100,6 +96,7 @@
 					// 娉ㄥ唽澶辫触
 					response = getMessageFactory().createResponse(Response.FORBIDDEN, request);
 					response.setReasonPhrase("wrong password");
+					logger.info("[{}] 瀵嗙爜閿欒 鍥炲403", requestAddress);
 				}else {
 					// 鎼哄甫鎺堟潈澶村苟涓斿瘑鐮佹纭�
 					response = getMessageFactory().createResponse(Response.OK, request);
diff --git a/src/main/resources/application-dev.yml b/src/main/resources/application-dev.yml
index 3d25098..062f70e 100644
--- a/src/main/resources/application-dev.yml
+++ b/src/main/resources/application-dev.yml
@@ -52,7 +52,7 @@
 #zlm 榛樿鏈嶅姟鍣ㄩ厤缃�
 media:
     # [蹇呴』淇敼] zlm鏈嶅姟鍣ㄧ殑鍐呯綉IP
-    ip: 192.168.0.100
+    ip: 127.0.0.1
     # [蹇呴』淇敼] zlm鏈嶅姟鍣ㄧ殑http.port
     http-port: 80
     # [鍙�塢 zlm鏈嶅姟鍣ㄧ殑hook.admin_params=secret

--
Gitblit v1.8.0