mirror of
https://github.com/bigbluebutton/docker.git
synced 2025-02-10 06:50:08 +01:00
commit
7e60db384e
6
.gitmodules
vendored
6
.gitmodules
vendored
@ -1,3 +1,9 @@
|
|||||||
[submodule "bbb-webrtc-sfu"]
|
[submodule "bbb-webrtc-sfu"]
|
||||||
path = bbb-webrtc-sfu
|
path = bbb-webrtc-sfu
|
||||||
url = https://github.com/bigbluebutton/bbb-webrtc-sfu.git
|
url = https://github.com/bigbluebutton/bbb-webrtc-sfu.git
|
||||||
|
[submodule "mod/etherpad/bbb-etherpad-skin"]
|
||||||
|
path = mod/etherpad/bbb-etherpad-skin
|
||||||
|
url = https://github.com/alangecker/bbb-etherpad-skin
|
||||||
|
[submodule "mod/etherpad/bbb-etherpad-plugin"]
|
||||||
|
path = mod/etherpad/bbb-etherpad-plugin
|
||||||
|
url = https://github.com/alangecker/bbb-etherpad-plugin
|
||||||
|
@ -1,7 +1,13 @@
|
|||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
## Unreleased
|
## Unreleased
|
||||||
|
-
|
||||||
|
|
||||||
|
## Release v2.2.28-1 (2020-10-22) #67
|
||||||
|
- Applied v2.2.28 changes @alangecker
|
||||||
|
- Etherpad skin & plugin #69 @alangecker
|
||||||
|
- Updated `development.md` docs (example config & note about issue #66) @alangecker
|
||||||
|
- Allow setting the breakout room limit @alangecker
|
||||||
|
|
||||||
## Release v2.2.27-2 (2020-10-16)
|
## Release v2.2.27-2 (2020-10-16)
|
||||||
- Increase proxy timeout to avoid aborting websocket connections @alangecker
|
- Increase proxy timeout to avoid aborting websocket connections @alangecker
|
||||||
|
@ -1 +1 @@
|
|||||||
Subproject commit 2a6343f6ccdf16edaf50a73b776bf54ccad39b23
|
Subproject commit 2b77265d05625d5df8126ced381df5ccb59160a6
|
@ -151,6 +151,7 @@ services:
|
|||||||
DISABLE_VIDEO_PREVIEW: ${DISABLE_VIDEO_PREVIEW:-false}
|
DISABLE_VIDEO_PREVIEW: ${DISABLE_VIDEO_PREVIEW:-false}
|
||||||
CHAT_ENABLED: ${CHAT_ENABLED:-true}
|
CHAT_ENABLED: ${CHAT_ENABLED:-true}
|
||||||
CHAT_START_CLOSED: ${CHAT_START_CLOSED:-false}
|
CHAT_START_CLOSED: ${CHAT_START_CLOSED:-false}
|
||||||
|
BREAKOUTROOM_LIMIT: ${BREAKOUTROOM_LIMIT:-8}
|
||||||
DEV_MODE: ${DEV_MODE:-}
|
DEV_MODE: ${DEV_MODE:-}
|
||||||
networks:
|
networks:
|
||||||
bbb-net:
|
bbb-net:
|
||||||
|
@ -10,9 +10,11 @@ ENABLE_HTTPS_PROXY=true
|
|||||||
#ENABLE_COTURN=true
|
#ENABLE_COTURN=true
|
||||||
#ENABLE_GREENLIGHT=true
|
#ENABLE_GREENLIGHT=true
|
||||||
#ENABLE_WEBHOOKS=true
|
#ENABLE_WEBHOOKS=true
|
||||||
|
#ENABLE_PROMETHEUS_EXPORTER=true
|
||||||
|
#ENABLE_RECORDING=true
|
||||||
|
|
||||||
DOMAIN=10.7.7.1
|
DOMAIN=10.7.7.1
|
||||||
EXTERNAL_IP=10.7.7.1
|
EXTERNAL_IPv4=10.7.7.1
|
||||||
STUN_IP=216.93.246.18
|
STUN_IP=216.93.246.18
|
||||||
STUN_PORT=3478
|
STUN_PORT=3478
|
||||||
TURN_SERVER=turns:localhost:465?transport=tcp
|
TURN_SERVER=turns:localhost:465?transport=tcp
|
||||||
@ -37,6 +39,9 @@ RAILS_SECRET=SuperRailsSecret
|
|||||||
https://mconf.github.io/api-mate/#server=https://10.7.7.1/bigbluebutton/api&sharedSecret=SuperSecret
|
https://mconf.github.io/api-mate/#server=https://10.7.7.1/bigbluebutton/api&sharedSecret=SuperSecret
|
||||||
* At some point your browser will warn you about an invalid certificate, but you can press _"Accept the Risk and Continue" / "Proceed to 10.7.7.1 (unsafe)"_
|
* At some point your browser will warn you about an invalid certificate, but you can press _"Accept the Risk and Continue" / "Proceed to 10.7.7.1 (unsafe)"_
|
||||||
|
|
||||||
|
## Notes
|
||||||
|
- Joining a room via Greenlight currently leads to a "401 session not found" error (see https://github.com/alangecker/bigbluebutton-docker/issues/66). Use the API Mate instead
|
||||||
|
|
||||||
## Changes
|
## Changes
|
||||||
- After doing some changes you usually must...
|
- After doing some changes you usually must...
|
||||||
* rebuild the image(s): \
|
* rebuild the image(s): \
|
||||||
|
@ -2,20 +2,21 @@ FROM etherpad/etherpad:1.8.6
|
|||||||
|
|
||||||
USER root
|
USER root
|
||||||
|
|
||||||
# install etherpad plugins
|
|
||||||
# - ep_delete_after_delay_lite
|
|
||||||
# - ep_redis_publisher
|
|
||||||
RUN apt-get update \
|
RUN apt-get update \
|
||||||
&& apt-get install -y git \
|
&& apt-get install -y git
|
||||||
&& npm install ep_delete_after_delay_lite git+https://git@github.com/pedrobmarin/ep_redis_publisher.git
|
|
||||||
|
|
||||||
# apply "Including more data at pad update event"
|
|
||||||
# https://github.com/mconf/etherpad-lite/commit/5bc37fc92714e82165386dc0a5dd467609169a87
|
|
||||||
# this is a necessary patch for the closed captions
|
|
||||||
RUN sed -i "s|hooks\.callAll(\"padUpdate\".*)|hooks\.callAll(\"padUpdate\", {'pad':this, 'author': author, 'revs': newRev, 'changeset': aChangeset});|" /opt/etherpad-lite/src/node/db/Pad.js
|
|
||||||
|
|
||||||
COPY settings.json /opt/etherpad-lite/settings.json
|
|
||||||
COPY entrypoint.sh /entrypoint.sh
|
|
||||||
|
|
||||||
USER etherpad
|
USER etherpad
|
||||||
|
|
||||||
|
RUN npm install \
|
||||||
|
ep_delete_after_delay_lite \
|
||||||
|
git+https://git@github.com/pedrobmarin/ep_redis_publisher.git
|
||||||
|
|
||||||
|
# add skin from git submodule
|
||||||
|
COPY --chown=etherpad:0 ./bbb-etherpad-skin /opt/etherpad-lite/src/static/skins/bigbluebutton
|
||||||
|
|
||||||
|
# add plugin from git submodule
|
||||||
|
COPY --chown=etherpad:0 ./bbb-etherpad-plugin /opt/etherpad-lite/node_modules/ep_bigbluebutton_patches
|
||||||
|
|
||||||
|
COPY settings.json /opt/etherpad-lite/settings.json
|
||||||
|
COPY entrypoint.sh /entrypoint.sh
|
||||||
ENTRYPOINT ["/entrypoint.sh"]
|
ENTRYPOINT ["/entrypoint.sh"]
|
1
mod/etherpad/bbb-etherpad-plugin
Submodule
1
mod/etherpad/bbb-etherpad-plugin
Submodule
@ -0,0 +1 @@
|
|||||||
|
Subproject commit 6c28508afde7c10aeec64403c43bf909cae60c74
|
1
mod/etherpad/bbb-etherpad-skin
Submodule
1
mod/etherpad/bbb-etherpad-skin
Submodule
@ -0,0 +1 @@
|
|||||||
|
Subproject commit 05ad435b3e935c2563b69bc5b937d1f3fd50fe5a
|
@ -80,7 +80,7 @@
|
|||||||
* - "colibris": the new experimental skin (since Etherpad 1.8), candidate to
|
* - "colibris": the new experimental skin (since Etherpad 1.8), candidate to
|
||||||
* become the default in Etherpad 2.0
|
* become the default in Etherpad 2.0
|
||||||
*/
|
*/
|
||||||
"skinName": "no-skin",
|
"skinName": "bigbluebutton",
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* IP and port which etherpad should bind at
|
* IP and port which etherpad should bind at
|
||||||
@ -312,14 +312,26 @@
|
|||||||
"trustProxy": true,
|
"trustProxy": true,
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* When embedding the pads in an iframe set this to true.
|
* Settings controlling the session cookie issued by Etherpad.
|
||||||
*/
|
*/
|
||||||
"forceSameSiteNone": false,
|
"cookie": {
|
||||||
|
/*
|
||||||
|
* Value of the SameSite cookie property. "Lax" is recommended unless
|
||||||
|
* Etherpad will be embedded in an iframe from another site, in which case
|
||||||
|
* this must be set to "None". Note: "None" will not work (the browser will
|
||||||
|
* not send the cookie to Etherpad) unless https is used to access Etherpad
|
||||||
|
* (either directly or via a reverse proxy with "trustProxy" set to true).
|
||||||
|
*
|
||||||
|
* "Strict" is not recommended because it has few security benefits but
|
||||||
|
* significant usability drawbacks vs. "Lax". See
|
||||||
|
* https://stackoverflow.com/q/41841880 for discussion.
|
||||||
|
*/
|
||||||
|
"sameSite": "None"
|
||||||
|
},
|
||||||
/*
|
/*
|
||||||
* Privacy: disable IP logging
|
* Privacy: disable IP logging
|
||||||
*/
|
*/
|
||||||
"disableIPlogging": false,
|
"disableIPlogging": true,
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Time (in seconds) to automatically reconnect pad when a "Force reconnect"
|
* Time (in seconds) to automatically reconnect pad when a "Force reconnect"
|
||||||
@ -527,6 +539,8 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
]
|
]
|
||||||
} // logconfig
|
}, // logconfig
|
||||||
|
/* Override any strings found in locale directories */
|
||||||
|
"customLocaleStrings": {}
|
||||||
}
|
}
|
||||||
|
|
@ -76,10 +76,11 @@ RUN cd /etc \
|
|||||||
&& rm -rf /etc/freeswitch/.svn
|
&& rm -rf /etc/freeswitch/.svn
|
||||||
|
|
||||||
# the current available freeswitch-mod-opusfile is broken,
|
# the current available freeswitch-mod-opusfile is broken,
|
||||||
# it can't write any .opus files.
|
# it can't write any .opus files. The fix provided in
|
||||||
# there is already a fix, but it is not included yet.
|
|
||||||
# https://github.com/signalwire/freeswitch/pull/719/files
|
# https://github.com/signalwire/freeswitch/pull/719/files
|
||||||
# we rather switch to the binary built by bigbluebutton and add its dependencies
|
# is not sufficient as the module still comes without opus
|
||||||
|
# write support, so we rather switch to the binary built
|
||||||
|
# by bigbluebutton and add its dependencies
|
||||||
RUN wget -O /usr/lib/freeswitch/mod/mod_opusfile.so https://github.com/bbb-pkg/bbb-freeswitch-core/raw/43f3a47af1fcf5ea559e16bb28b900c925a7f2c3/opt/freeswitch/lib/freeswitch/mod/mod_opusfile.so \
|
RUN wget -O /usr/lib/freeswitch/mod/mod_opusfile.so https://github.com/bbb-pkg/bbb-freeswitch-core/raw/43f3a47af1fcf5ea559e16bb28b900c925a7f2c3/opt/freeswitch/lib/freeswitch/mod/mod_opusfile.so \
|
||||||
&& wget -O /tmp/libopusenc0_0.2.1-1bbb1_amd64.deb https://launchpad.net/~bigbluebutton/+archive/ubuntu/support/+files/libopusenc0_0.2.1-1bbb1_amd64.deb \
|
&& wget -O /tmp/libopusenc0_0.2.1-1bbb1_amd64.deb https://launchpad.net/~bigbluebutton/+archive/ubuntu/support/+files/libopusenc0_0.2.1-1bbb1_amd64.deb \
|
||||||
&& dpkg -i /tmp/libopusenc0_0.2.1-1bbb1_amd64.deb \
|
&& dpkg -i /tmp/libopusenc0_0.2.1-1bbb1_amd64.deb \
|
||||||
|
@ -14,7 +14,7 @@ USER meteor
|
|||||||
ENV METEOR_VERSION 1.8.1
|
ENV METEOR_VERSION 1.8.1
|
||||||
RUN curl -sL https://install.meteor.com?release=$METEOR_VERSION | sed s/--progress-bar/-sL/g | /bin/sh
|
RUN curl -sL https://install.meteor.com?release=$METEOR_VERSION | sed s/--progress-bar/-sL/g | /bin/sh
|
||||||
|
|
||||||
ENV TAG v2.2.27
|
ENV TAG v2.2.28
|
||||||
RUN cd ~ \
|
RUN cd ~ \
|
||||||
&& svn checkout https://github.com/bigbluebutton/bigbluebutton/tags/$TAG/bigbluebutton-html5 \
|
&& svn checkout https://github.com/bigbluebutton/bigbluebutton/tags/$TAG/bigbluebutton-html5 \
|
||||||
&& mv ~/bigbluebutton-html5 ~/source \
|
&& mv ~/bigbluebutton-html5 ~/source \
|
||||||
@ -51,4 +51,4 @@ USER meteor
|
|||||||
ENTRYPOINT ["/entrypoint.sh"]
|
ENTRYPOINT ["/entrypoint.sh"]
|
||||||
|
|
||||||
# lets set the tag again, so that it is include in the image for later version retrieval
|
# lets set the tag again, so that it is include in the image for later version retrieval
|
||||||
ENV TAG v2.2.27
|
ENV TAG v2.2.28
|
||||||
|
@ -11,12 +11,15 @@ public:
|
|||||||
appName: BigBlueButton HTML5 Client
|
appName: BigBlueButton HTML5 Client
|
||||||
bbbServerVersion: 2.2
|
bbbServerVersion: 2.2
|
||||||
copyright: "©2020 BigBlueButton Inc."
|
copyright: "©2020 BigBlueButton Inc."
|
||||||
html5ClientBuild: 1032
|
html5ClientBuild: 1058
|
||||||
helpLink: https://bigbluebutton.org/html5/
|
helpLink: https://bigbluebutton.org/html5/
|
||||||
lockOnJoin: true
|
lockOnJoin: true
|
||||||
cdn: ""
|
cdn: ""
|
||||||
basename: "/html5client"
|
basename: "/html5client"
|
||||||
askForFeedbackOnLogout: false
|
askForFeedbackOnLogout: false
|
||||||
|
# the default logoutUrl matches window.location.origin i.e. bigbluebutton.org for demo.bigbluebutton.org
|
||||||
|
# in some cases we want only custom logoutUrl to be used when provided on meeting create. Default value: true
|
||||||
|
allowDefaultLogoutUrl: true
|
||||||
allowUserLookup: false
|
allowUserLookup: false
|
||||||
enableNetworkInformation: false
|
enableNetworkInformation: false
|
||||||
enableLimitOfViewersInWebcam: false
|
enableLimitOfViewersInWebcam: false
|
||||||
@ -32,7 +35,7 @@ public:
|
|||||||
# Warning: increasing the limit of breakout rooms per meeting
|
# Warning: increasing the limit of breakout rooms per meeting
|
||||||
# can generate excessive overhead to the server. We recommend
|
# can generate excessive overhead to the server. We recommend
|
||||||
# this value to be kept under 12.
|
# this value to be kept under 12.
|
||||||
breakoutRoomLimit: 8
|
breakoutRoomLimit: {{ .Env.BREAKOUTROOM_LIMIT }}
|
||||||
defaultSettings:
|
defaultSettings:
|
||||||
application:
|
application:
|
||||||
animations: true
|
animations: true
|
||||||
@ -280,7 +283,7 @@ public:
|
|||||||
callHangupMaximumRetries: 10
|
callHangupMaximumRetries: 10
|
||||||
echoTestNumber: 'echo'
|
echoTestNumber: 'echo'
|
||||||
relayOnlyOnReconnect: false
|
relayOnlyOnReconnect: false
|
||||||
listenOnlyCallTimeout: 15000
|
listenOnlyCallTimeout: 25000
|
||||||
presentation:
|
presentation:
|
||||||
defaultPresentationFile: default.pdf
|
defaultPresentationFile: default.pdf
|
||||||
panZoomThrottle: 32
|
panZoomThrottle: 32
|
||||||
@ -474,5 +477,7 @@ private:
|
|||||||
version: 50
|
version: 50
|
||||||
- browser: electron
|
- browser: electron
|
||||||
version: [0, 36]
|
version: [0, 36]
|
||||||
|
- browser: SamsungInternet
|
||||||
|
version: 10
|
||||||
- browser: YandexBrowser
|
- browser: YandexBrowser
|
||||||
version: 19
|
version: 19
|
||||||
|
@ -11,14 +11,8 @@ location /pad/p/ {
|
|||||||
proxy_set_header X-Forwarded-Proto https; # for EP to set secure cookie flag when https is used
|
proxy_set_header X-Forwarded-Proto https; # for EP to set secure cookie flag when https is used
|
||||||
proxy_http_version 1.1;
|
proxy_http_version 1.1;
|
||||||
|
|
||||||
# there is currently no viable source for building the
|
auth_request /bigbluebutton/connection/checkAuthorization;
|
||||||
# bbb-etherpad including sesstiontokens which got introduced in v2.2.21
|
auth_request_set $auth_status $upstream_status;
|
||||||
# https://github.com/bigbluebutton/bigbluebutton/issues/10159
|
|
||||||
#
|
|
||||||
# We disable the authentication for now.
|
|
||||||
|
|
||||||
# auth_request /bigbluebutton/connection/checkAuthorization;
|
|
||||||
# auth_request_set $auth_status $upstream_status;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
location /pad {
|
location /pad {
|
||||||
@ -53,8 +47,8 @@ location /pad/socket.io {
|
|||||||
proxy_set_header Upgrade $http_upgrade;
|
proxy_set_header Upgrade $http_upgrade;
|
||||||
proxy_set_header Connection "Upgrade";
|
proxy_set_header Connection "Upgrade";
|
||||||
|
|
||||||
# auth_request /bigbluebutton/connection/checkAuthorization;
|
auth_request /bigbluebutton/connection/checkAuthorization;
|
||||||
# auth_request_set $auth_status $upstream_status;
|
auth_request_set $auth_status $upstream_status;
|
||||||
}
|
}
|
||||||
|
|
||||||
location /static {
|
location /static {
|
||||||
|
@ -114,6 +114,12 @@ DISABLE_SOUND_MUTED=false
|
|||||||
# set to true to disable announcement "You are the only person in this conference"
|
# set to true to disable announcement "You are the only person in this conference"
|
||||||
DISABLE_SOUND_ALONE=false
|
DISABLE_SOUND_ALONE=false
|
||||||
|
|
||||||
|
# maximum count of breakout rooms per meeting
|
||||||
|
# Warning: increasing the limit of breakout rooms per meeting
|
||||||
|
# can generate excessive overhead to the server. We recommend
|
||||||
|
# this value to be kept under 12.
|
||||||
|
BREAKOUTROOM_LIMIT=8
|
||||||
|
|
||||||
# ====================================
|
# ====================================
|
||||||
# GREENLIGHT CONFIGURATION
|
# GREENLIGHT CONFIGURATION
|
||||||
# ====================================
|
# ====================================
|
||||||
|
@ -17,8 +17,9 @@ else
|
|||||||
sed -i 's/EXTERNAL_IP=/EXTERNAL_IPv4=/' .env
|
sed -i 's/EXTERNAL_IP=/EXTERNAL_IPv4=/' .env
|
||||||
|
|
||||||
echo ""
|
echo ""
|
||||||
echo "# pull newest bbb-webrtc-sfu"
|
echo "# pull newest git submodules"
|
||||||
git submodule update --remote
|
git submodule init
|
||||||
|
git submodule update
|
||||||
|
|
||||||
|
|
||||||
echo ""
|
echo ""
|
||||||
|
Loading…
Reference in New Issue
Block a user