diff --git a/docker/openvidu-basic-screenshare/Dockerfile b/docker/openvidu-basic-screenshare/Dockerfile new file mode 100644 index 00000000..4a802a9d --- /dev/null +++ b/docker/openvidu-basic-screenshare/Dockerfile @@ -0,0 +1,26 @@ +FROM nginx:1.21.3-alpine + +ARG OPENVIDU_TUTORIALS_VERSION + +RUN apk update && \ + apk add wget && \ + rm -rf /var/cache/apk/* + +# Install basic-videoconference +RUN mkdir -p /var/www/openvidu-basic-screenshare && \ + wget -L -O /tmp/openvidu-tutorials.tar.gz \ + "https://github.com/OpenVidu/openvidu-tutorials/archive/v${OPENVIDU_TUTORIALS_VERSION}.tar.gz" && \ + tar zxf /tmp/openvidu-tutorials.tar.gz -C /tmp && \ + rm /tmp/openvidu-tutorials.tar.gz && \ + cp -r /tmp/openvidu-tutorials*/openvidu-insecure-js-screen-share/web/* /var/www/openvidu-basic-screenshare && \ + rm -r /tmp/openvidu-tutorials* && \ + chown -R nginx:nginx /var/www/openvidu-basic-screenshare + +# Nginx conf +COPY ./openvidu-basic-screenshare.conf /etc/nginx/conf.d/default.conf + +# Entrypoint +COPY ./entrypoint.sh /usr/local/bin +RUN chmod +x /usr/local/bin/entrypoint.sh + +CMD /usr/local/bin/entrypoint.sh diff --git a/docker/openvidu-basic-screenshare/create_image.sh b/docker/openvidu-basic-screenshare/create_image.sh new file mode 100755 index 00000000..c4d6c224 --- /dev/null +++ b/docker/openvidu-basic-screenshare/create_image.sh @@ -0,0 +1,4 @@ +#!/bin/bash + +docker build --pull --no-cache --rm=true --build-arg OPENVIDU_TUTORIALS_VERSION="$1" -t openvidu/openvidu-basic-screenshare . +docker tag openvidu/openvidu-basic-screenshare:latest openvidu/openvidu-basic-screenshare:$1 diff --git a/docker/openvidu-basic-screenshare/entrypoint.sh b/docker/openvidu-basic-screenshare/entrypoint.sh new file mode 100644 index 00000000..cfc2debd --- /dev/null +++ b/docker/openvidu-basic-screenshare/entrypoint.sh @@ -0,0 +1,18 @@ +#!/bin/sh + +[ ! -z "${OPENVIDU_URL}" ] && echo "OPENVIDU_URL: ${OPENVIDU_URL}" || echo "OPENVIDU_URL: default" +[ ! -z "${OPENVIDU_SECRET}" ] && echo "OPENVIDU_SECRET: ${OPENVIDU_SECRET}" || echo "OPENVIDU_SECRET: default" + +if [ ! -z "${OPENVIDU_URL}" ]; then + sed -i "s/^var OPENVIDU_SERVER_URL =.*$/var OPENVIDU_SERVER_URL = \"$(echo "${OPENVIDU_URL}" | sed 's#/#\\/#g')\";/" /var/www/openvidu-basic-screenshare/app.js +fi + +if [ ! -z "${OPENVIDU_SECRET}" ]; then + sed -i "s/^var OPENVIDU_SERVER_SECRET =.*$/var OPENVIDU_SERVER_SECRET = \"${OPENVIDU_SECRET}\";/" /var/www/openvidu-basic-screenshare/app.js +fi + +# Run nginx +nginx -g "daemon on;" + +# Show logs +tail -f /var/log/nginx/*.log diff --git a/docker/openvidu-basic-screenshare/openvidu-basic-screenshare.conf b/docker/openvidu-basic-screenshare/openvidu-basic-screenshare.conf new file mode 100644 index 00000000..23f3bffb --- /dev/null +++ b/docker/openvidu-basic-screenshare/openvidu-basic-screenshare.conf @@ -0,0 +1,6 @@ +server { + listen 80; + server_name localhost; + + root /var/www/openvidu-basic-screenshare; +} diff --git a/docker/openvidu-basic-videoconference/Dockerfile b/docker/openvidu-basic-videoconference/Dockerfile index c7b11196..ccc31b9a 100644 --- a/docker/openvidu-basic-videoconference/Dockerfile +++ b/docker/openvidu-basic-videoconference/Dockerfile @@ -1,4 +1,4 @@ -FROM nginx:1.18.0-alpine +FROM nginx:1.21.3-alpine ARG OPENVIDU_TUTORIALS_VERSION diff --git a/docker/openvidu-basic-videoconference/openvidu-basic-videoconference.conf b/docker/openvidu-basic-videoconference/openvidu-basic-videoconference.conf index af118cee..0a0c9b3d 100644 --- a/docker/openvidu-basic-videoconference/openvidu-basic-videoconference.conf +++ b/docker/openvidu-basic-videoconference/openvidu-basic-videoconference.conf @@ -3,4 +3,4 @@ server { server_name localhost; root /var/www/openvidu-basic-videoconference; -} \ No newline at end of file +} diff --git a/docker/openvidu-basic-webinar/Dockerfile b/docker/openvidu-basic-webinar/Dockerfile index de3b2a9d..4b783452 100644 --- a/docker/openvidu-basic-webinar/Dockerfile +++ b/docker/openvidu-basic-webinar/Dockerfile @@ -1,4 +1,4 @@ -FROM alpine:3.11 +FROM alpine:3.13 ARG OPENVIDU_TUTORIALS_VERSION diff --git a/docker/openvidu-classroom/Dockerfile b/docker/openvidu-classroom/Dockerfile index e305b844..b66c9525 100644 --- a/docker/openvidu-classroom/Dockerfile +++ b/docker/openvidu-classroom/Dockerfile @@ -1,4 +1,4 @@ -FROM alpine:3.11 +FROM alpine:3.13 ARG OPENVIDU_TUTORIALS_VERSION diff --git a/docker/openvidu-demo-proxy/Dockerfile b/docker/openvidu-demo-proxy/Dockerfile index b2dce527..e3cd3c35 100644 --- a/docker/openvidu-demo-proxy/Dockerfile +++ b/docker/openvidu-demo-proxy/Dockerfile @@ -1,4 +1,4 @@ -FROM nginx:1.18.0-alpine +FROM nginx:1.21.3-alpine # Nginx conf COPY ./conf/html /var/www/html diff --git a/docker/openvidu-demo-proxy/conf/default.conf b/docker/openvidu-demo-proxy/conf/default.conf index 1522062f..76468ea0 100644 --- a/docker/openvidu-demo-proxy/conf/default.conf +++ b/docker/openvidu-demo-proxy/conf/default.conf @@ -2,26 +2,6 @@ add_header X-Frame-Options SAMEORIGIN; add_header X-Content-Type-Options nosniff; add_header X-XSS-Protection "1; mode=block"; -upstream openvidu-basic-videoconference { - server url_ov_basic_videoconference; -} - -upstream openvidu-basic-webinar { - server url_ov_basic_webinar; -} - -upstream openvidu-classroom { - server url_ov_classroom; -} - -upstream openvidu-getaroom { - server url_ov_getaroom; -} - -upstream openvidu-call { - server url_ov_call; -} - server { listen 80; server_name _; @@ -40,29 +20,34 @@ server { proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; - + location /basic-videoconference { rewrite /basic-videoconference(.*) /$1 break; - proxy_pass http://openvidu-basic-videoconference; + proxy_pass url_ov_basic_videoconference; + } + + location /basic-screenshare { + rewrite /basic-screenshare(.*) /$1 break; + proxy_pass url_ov_basic_screenshare; } location /basic-webinar { rewrite /basic-webinar(.*) /$1 break; - proxy_pass https://openvidu-basic-webinar; + proxy_pass url_ov_basic_webinar; } location /getaroom { rewrite /getaroom(.*) /$1 break; - proxy_pass http://openvidu-getaroom; + proxy_pass url_ov_getaroom; } location /classroom { rewrite /classroom(.*) $1 break; - proxy_pass https://openvidu-classroom; + proxy_pass url_ov_classroom; } location /openvidu-call { rewrite /openvidu-call(.*) $1 break; - proxy_pass http://openvidu-call; + proxy_pass url_ov_call; } } diff --git a/docker/openvidu-demo-proxy/conf/html/index.html b/docker/openvidu-demo-proxy/conf/html/index.html index 13f36683..56cfb762 100644 --- a/docker/openvidu-demo-proxy/conf/html/index.html +++ b/docker/openvidu-demo-proxy/conf/html/index.html @@ -44,7 +44,15 @@
-

Basic Videoconference

+

Basic
Videoconference

+
+
+ +
+ + +
+

Basic Videoconference with Screen Share

@@ -52,7 +60,15 @@
-

Basic Webinar

+

Basic
Webinar

+
+
+ +
+ + +
+

OpenVidu Call

@@ -72,14 +88,6 @@ -
- - -
-

OpenVidu Call

-
-
-
diff --git a/docker/openvidu-demo-proxy/conf/html/resources/images/basic_screenshare.png b/docker/openvidu-demo-proxy/conf/html/resources/images/basic_screenshare.png new file mode 100644 index 00000000..97d14d6f Binary files /dev/null and b/docker/openvidu-demo-proxy/conf/html/resources/images/basic_screenshare.png differ diff --git a/docker/openvidu-demo-proxy/entrypoint.sh b/docker/openvidu-demo-proxy/entrypoint.sh index 4b6a9e9f..c5e9ba6e 100644 --- a/docker/openvidu-demo-proxy/entrypoint.sh +++ b/docker/openvidu-demo-proxy/entrypoint.sh @@ -2,17 +2,19 @@ # Show input enviroment variables echo "openvidu-basic-videoconference: ${URL_OV_BASIC_VIDEOCONFERENCE}" +echo "openvidu-basic-screenshare: ${URL_OV_BASIC_SCREENSHARE}" echo "openvidu-basic-webinar: ${URL_OV_BASIC_WEBINAR}" echo "openvidu-classroom: ${URL_OV_CLASSROOM}" echo "openvidu-getaroom: ${URL_OV_GETAROOM}" echo "openvidu-call: ${URL_OV_CALL}" # Load nginx conf files -sed -i "s/url_ov_basic_videoconference/${URL_OV_BASIC_VIDEOCONFERENCE}/" /etc/nginx/conf.d/default.conf -sed -i "s/url_ov_basic_webinar/${URL_OV_BASIC_WEBINAR}/" /etc/nginx/conf.d/default.conf -sed -i "s/url_ov_classroom/${URL_OV_CLASSROOM}/" /etc/nginx/conf.d/default.conf -sed -i "s/url_ov_getaroom/${URL_OV_GETAROOM}/" /etc/nginx/conf.d/default.conf -sed -i "s/url_ov_call/${URL_OV_CALL}/" /etc/nginx/conf.d/default.conf +sed -i "s|url_ov_basic_videoconference|${URL_OV_BASIC_VIDEOCONFERENCE}|" /etc/nginx/conf.d/default.conf +sed -i "s|url_ov_basic_screenshare|${URL_OV_BASIC_SCREENSHARE}|" /etc/nginx/conf.d/default.conf +sed -i "s|url_ov_basic_webinar|${URL_OV_BASIC_WEBINAR}|" /etc/nginx/conf.d/default.conf +sed -i "s|url_ov_classroom|${URL_OV_CLASSROOM}|" /etc/nginx/conf.d/default.conf +sed -i "s|url_ov_getaroom|${URL_OV_GETAROOM}|" /etc/nginx/conf.d/default.conf +sed -i "s|url_ov_call|${URL_OV_CALL}|" /etc/nginx/conf.d/default.conf # Run nginx nginx -g "daemon off;" diff --git a/docker/openvidu-demos-docker-compose/docker-compose.yml b/docker/openvidu-demos-docker-compose/docker-compose.yml index 29bf0104..07121182 100644 --- a/docker/openvidu-demos-docker-compose/docker-compose.yml +++ b/docker/openvidu-demos-docker-compose/docker-compose.yml @@ -5,47 +5,55 @@ services: openvidu-basic-videoconference: image: openvidu/openvidu-basic-videoconference:2.20.0 restart: on-failure - environment: + environment: - OPENVIDU_URL=https://${DOMAIN_OR_PUBLIC_IP:-}:${HTTPS_PORT:-443} - OPENVIDU_SECRET=${OPENVIDU_SECRET:-} - + + openvidu-basic-screenshare: + image: openvidu/openvidu-basic-screenshare:2.20.0 + restart: on-failure + environment: + - OPENVIDU_URL=https://${DOMAIN_OR_PUBLIC_IP:-}:${HTTPS_PORT:-443} + - OPENVIDU_SECRET=${OPENVIDU_SECRET:-} + openvidu-basic-webinar: image: openvidu/openvidu-basic-webinar:2.20.0 restart: on-failure - environment: + environment: - OPENVIDU_URL=https://${DOMAIN_OR_PUBLIC_IP:-}:${HTTPS_PORT:-443} - OPENVIDU_SECRET=${OPENVIDU_SECRET:-} openvidu-classroom: image: openvidu/openvidu-classroom:2.20.0 restart: on-failure - environment: + environment: - OPENVIDU_URL=https://${DOMAIN_OR_PUBLIC_IP:-}:${HTTPS_PORT:-443} - OPENVIDU_SECRET=${OPENVIDU_SECRET:-} - + openvidu-getaroom: image: openvidu/openvidu-getaroom:2.20.0 restart: on-failure - environment: + environment: - OPENVIDU_URL=https://${DOMAIN_OR_PUBLIC_IP:-}:${HTTPS_PORT:-443} - OPENVIDU_SECRET=${OPENVIDU_SECRET:-} openvidu-call: image: openvidu/openvidu-call:2.20.0-demos restart: on-failure - environment: + environment: - OPENVIDU_URL=https://${DOMAIN_OR_PUBLIC_IP:-}:${HTTPS_PORT:-443} - OPENVIDU_SECRET=${OPENVIDU_SECRET:-} - CALL_OPENVIDU_CERTTYPE=${CERTIFICATE_TYPE} demos-page: - image: openvidu/openvidu-demo-proxy:1.0.0 + image: openvidu/openvidu-demo-proxy:1.1.0 restart: on-failure ports: - "5442:80" environment: - - URL_OV_BASIC_VIDEOCONFERENCE=openvidu-basic-videoconference:80 - - URL_OV_BASIC_WEBINAR=openvidu-basic-webinar:5000 - - URL_OV_CLASSROOM=openvidu-classroom:5000 - - URL_OV_GETAROOM=openvidu-getaroom:80 - - URL_OV_CALL=openvidu-call:5000 + - URL_OV_BASIC_VIDEOCONFERENCE=http://openvidu-basic-videoconference:80 + - URL_OV_BASIC_SCREENSHARE=http://openvidu-basic-screenshare:80 + - URL_OV_BASIC_WEBINAR=http://openvidu-basic-webinar:5000 + - URL_OV_CLASSROOM=https://openvidu-classroom:5000 + - URL_OV_GETAROOM=http://openvidu-getaroom:80 + - URL_OV_CALL=http://openvidu-call:5000 diff --git a/docker/openvidu-getaroom/Dockerfile b/docker/openvidu-getaroom/Dockerfile index 1ff93538..b282ef11 100644 --- a/docker/openvidu-getaroom/Dockerfile +++ b/docker/openvidu-getaroom/Dockerfile @@ -1,4 +1,4 @@ -FROM nginx:1.18.0-alpine +FROM nginx:1.21.3-alpine ARG OPENVIDU_TUTORIALS_VERSION diff --git a/openvidu-insecure-js-screen-share/web/app.js b/openvidu-insecure-js-screen-share/web/app.js index 2671eeb0..be8c0b89 100644 --- a/openvidu-insecure-js-screen-share/web/app.js +++ b/openvidu-insecure-js-screen-share/web/app.js @@ -190,7 +190,7 @@ window.onbeforeunload = function () { }; function generateParticipantInfo() { - document.getElementById("sessionId").value = "SessionA"; + document.getElementById("sessionId").value = "SessionScreenA"; document.getElementById("userName").value = "Participant" + Math.floor(Math.random() * 100); }