From 252d6359a1d5979033dbf958a277f7b39480c604 Mon Sep 17 00:00:00 2001 From: pabloFuente Date: Mon, 18 Sep 2017 17:16:31 +0200 Subject: [PATCH] Now insecure containers build with compiled openvidu-server.jar. localhost connections works on all Docker containers demos --- openvidu-getaroom/docker/Dockerfile | 1 + openvidu-getaroom/docker/create_image.sh | 21 ++++++----------- openvidu-getaroom/docker/supervisord.conf | 2 +- openvidu-insecure-js/docker/Dockerfile | 2 +- openvidu-insecure-js/docker/create_image.sh | 24 ++++++-------------- openvidu-insecure-js/docker/ngrok.yml | 2 +- openvidu-insecure-js/docker/supervisord.conf | 2 +- 7 files changed, 19 insertions(+), 35 deletions(-) diff --git a/openvidu-getaroom/docker/Dockerfile b/openvidu-getaroom/docker/Dockerfile index 84482b6c..6125e633 100644 --- a/openvidu-getaroom/docker/Dockerfile +++ b/openvidu-getaroom/docker/Dockerfile @@ -11,6 +11,7 @@ RUN echo "deb http://ubuntu.kurento.org xenial kms6" | tee /etc/apt/sources.list COPY kms.sh /kms.sh COPY ngrok.sh /ngrok.sh +COPY web /web/ # Install Java RUN apt-get update && apt-get install -y openjdk-8-jdk && rm -rf /var/lib/apt/lists/* diff --git a/openvidu-getaroom/docker/create_image.sh b/openvidu-getaroom/docker/create_image.sh index 8ca57933..1f191093 100755 --- a/openvidu-getaroom/docker/create_image.sh +++ b/openvidu-getaroom/docker/create_image.sh @@ -1,23 +1,16 @@ -# Copy openvidu-server project except angular-cli project ('frontend' folder) -rsync -ax --exclude='**/angular' --exclude='**/static' ../../../openvidu/openvidu-server . +# Copy compiled openvidu-server.jar +cp ../../../openvidu/openvidu-server/target/openvidu-server-"$1".jar ./openvidu-server.jar -# Comment root path Basic Authorization in SecurityConfig.java -sed -i 's/\.antMatchers(\"\/\").authenticated()/\/\/.antMatchers(\"\/\").authenticated()/g' ./openvidu-server/src/main/java/io/openvidu/server/security/SecurityConfig.java +# Copy openvidu-insecure-js web files +cp -a ../web/. ./web/ -# Copy plainjs-demo web files into static folder of openvidu-server project -cp -a ../web/. ./openvidu-server/src/main/resources/static/ - -# Build and package maven project -cd openvidu-server -mvn clean compile package -DskipTests=true - -# Copy .jar in docker build path -cp target/openvidu-server-"$1".jar ../openvidu-server.jar +# Modify WebSocket protocol in app.js for allowing both ngrok and localhost connections +sed -i 's/OV\.initSession("wss:\/\/"/OV\.initSession("ws:\/\/"/g' ./web/app.js # Build docker image -cd .. docker build -t openvidu/getaroom-demo . # Delete unwanted files +rm -rf ./web rm -rf ./openvidu-server rm openvidu-server.jar diff --git a/openvidu-getaroom/docker/supervisord.conf b/openvidu-getaroom/docker/supervisord.conf index 9cfab128..79e29fad 100644 --- a/openvidu-getaroom/docker/supervisord.conf +++ b/openvidu-getaroom/docker/supervisord.conf @@ -9,7 +9,7 @@ command=/bin/bash /kms.sh redirect_stderr=true [program:openvidu-server] -command=/bin/bash -c "java -Dspring.profiles.active=ngrok -Dserver.port=8443 -jar /openvidu-server.jar" +command=/bin/bash -c "java -Dspring.profiles.active=ngrok -Dserver.port=8443 -Dsecurity.ignored=/** -Dspring.resources.static-locations=file:///web/ -jar /openvidu-server.jar" redirect_stderr=true [program:ngrok] diff --git a/openvidu-insecure-js/docker/Dockerfile b/openvidu-insecure-js/docker/Dockerfile index 0405b702..51902a4c 100644 --- a/openvidu-insecure-js/docker/Dockerfile +++ b/openvidu-insecure-js/docker/Dockerfile @@ -11,6 +11,7 @@ RUN echo "deb http://ubuntu.kurento.org xenial kms6" | tee /etc/apt/sources.list COPY kms.sh /kms.sh COPY ngrok.sh /ngrok.sh +COPY web /web/ # Install Java RUN apt-get update && apt-get install -y openjdk-8-jdk && rm -rf /var/lib/apt/lists/* @@ -41,7 +42,6 @@ RUN set -x \ && chmod -R go=u,go-w /home/ngrok \ && chmod go= /home/ngrok -EXPOSE 5000 EXPOSE 4040 EXPOSE 8443 diff --git a/openvidu-insecure-js/docker/create_image.sh b/openvidu-insecure-js/docker/create_image.sh index 71ff891c..b80dd217 100755 --- a/openvidu-insecure-js/docker/create_image.sh +++ b/openvidu-insecure-js/docker/create_image.sh @@ -1,26 +1,16 @@ -# Copy openvidu-server project except angular-cli project ('frontend' folder) -rsync -ax --exclude='**/angular' --exclude='**/static' ../../../openvidu/openvidu-server . +# Copy compiled openvidu-server.jar +cp ../../../openvidu/openvidu-server/target/openvidu-server-"$1".jar ./openvidu-server.jar -# Comment root path Basic Authorization in SecurityConfig.java -sed -i 's/\.antMatchers(\"\/\").authenticated()/\/\/.antMatchers(\"\/\").authenticated()/g' ./openvidu-server/src/main/java/io/openvidu/server/security/SecurityConfig.java +# Copy openvidu-insecure-js web files +cp -a ../web/. ./web/ -# Copy plainjs-demo web files into static folder of openvidu-server project -cp -a ../web/. ./openvidu-server/src/main/resources/static/ - -# Change port and protocol in URL param of new OpenVidu object in app.js -#sed -i 's/\OV.initSession(\"wss:\/\/\" + location.hostname + \":8443\/\"/OV.initSession(\"wss:\/\/\" + location.hostname + \"\/\"/g' ./openvidu-server/src/main/resources/static/app.js - -# Build and package maven project -cd openvidu-server -mvn clean compile package -DskipTests=true - -# Copy .jar in docker build path -cp target/openvidu-server-"$1".jar ../openvidu-server.jar +# Modify WebSocket protocol in app.js for allowing both ngrok and localhost connections +sed -i 's/OV\.initSession("wss:\/\/"/OV\.initSession("ws:\/\/"/g' ./web/app.js # Build docker image -cd .. docker build -t openvidu/basic-videoconference-demo . # Delete unwanted files +rm -rf ./web rm -rf ./openvidu-server rm openvidu-server.jar diff --git a/openvidu-insecure-js/docker/ngrok.yml b/openvidu-insecure-js/docker/ngrok.yml index f0a874dc..429a3073 100644 --- a/openvidu-insecure-js/docker/ngrok.yml +++ b/openvidu-insecure-js/docker/ngrok.yml @@ -1,5 +1,5 @@ web_addr: 0.0.0.0:4040 tunnels: app: - addr: 5000 + addr: 8443 proto: http diff --git a/openvidu-insecure-js/docker/supervisord.conf b/openvidu-insecure-js/docker/supervisord.conf index 185c1d5d..79e29fad 100644 --- a/openvidu-insecure-js/docker/supervisord.conf +++ b/openvidu-insecure-js/docker/supervisord.conf @@ -9,7 +9,7 @@ command=/bin/bash /kms.sh redirect_stderr=true [program:openvidu-server] -command=/bin/bash -c "java -Dspring.profiles.active=ngrok -jar /openvidu-server.jar" +command=/bin/bash -c "java -Dspring.profiles.active=ngrok -Dserver.port=8443 -Dsecurity.ignored=/** -Dspring.resources.static-locations=file:///web/ -jar /openvidu-server.jar" redirect_stderr=true [program:ngrok]