- Not well tested, can be still really buggy. Don't use for production!
- Install docker-ce & docker-compose
- follow instructions
- Ensure docker works with
$ docker run hello-world - Install docker-compose: https://docs.docker.com/compose/install/
- Ensure docker-compose works:
$ docker-compose --version
- Clone this repository
$ git clone --recurse-submodules https://github.com/alangecker/bigbluebutton-docker.git bbb-docker $ cd bbb-docker - Create
.envwith$ cp sample.env .env - Adjust the values in
.env- Important: don't forget to change
ETHERPAD_API_KEY,SHARED_SECRETandRAILS_SECRETto any random values! For example generated withpwgen 40 3 DOMAINandEXTERNAL_IPare also required. For example, usedig +short <DOMAIN>to get your external ip address.
- Important: don't forget to change
- Start container. either...
- Most common setup: BigBlueButton with automatic HTTPS certificate retrieval and Greenlight
$ docker-compose \ -f docker-compose.yml \ -f docker-compose.https.yml \ -f docker-compose.greenlight.yml \ up --detach - Individual parts:
- BigBlueButton
$ docker-compose up -d - HTTPS reverse proxy
$ docker-compose -f docker-compose.https.yml up -d
- API demos
$ docker-compose -f docker-compose.demo.yml up -d- Access https://bbb.example.com/demo/
- Greenlight
$ docker-compose -f docker-compose.greenlight.yml up -d- Create an administrator account
$ docker exec greenlight-v2 bundle exec rake admin:create - Access https://bbb.example.com/b
- BigBlueButton
- Most common setup: BigBlueButton with automatic HTTPS certificate retrieval and Greenlight
Kurento binds somehow always to the external IP instead of the local one or 0.0.0.0. For that reason you need to add your external IP to your interface.
$ ip addr add 144.76.97.34/32 dev ens3
Specific to your linux distribution. Use a search engine of your choice. ;)
Also don't forget to forward all necassary ports listed in http://docs.bigbluebutton.org/2.2/configure-firewall.html
cd bbb-docker
# pull repo changes
git pull
# update bbb-webrtc-sfu
git submodule update --remote
# rebuild images
docker-compose build --pull --no-cache
# recreate updated services
docker-compose up -dImportant: especially with a version before 2020-05-17 create a database backup first, otherwise the data will not be persistent between container recreations.
cd bbb-docker
# create a database backup
docker exec -t docker_postgres_1 pg_dumpall -c -U postgres > /root/greenlight_`date +%d-%m-%Y"_"%H_%M_%S`.sql
# pull repo changes
git pull
# pull image updates
docker-compose -f docker-compose.greenlight.yml pull
# recreate & restart services if necessary
docker-compose -f docker-compose.greenlight.yml up -d[to be written]
- @dkrenn, whos dockerized version (bigbluebutton#8858)(bigbluebutton/bigbluebutton#8858) helped me a lot in understand and some configs.
- add support for recording
- add coturn support
- further separate bbb-core into individual container
- enable IPv6 support
- fix captions (they don't appear,
readOnlyPadIdis missing) - switch to
node:12-buster-slimforhtml5 - switch to
node:12-buster-slimforwebrtc-sfu - drop root privileges in
webrtc-sfu - drop root privileges in
kurento