Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WIP: BigBlueButton 3.0 #313

Open
wants to merge 35 commits into
base: develop
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
1b0c9a9
script for instant development mode
alangecker Dec 7, 2023
4290c16
avoid duplicated BBB_BUILD_TAG values
alangecker Jan 7, 2024
426349d
one variable DEV_MODE instead of multiple (would become quite a lot)
alangecker Jan 7, 2024
4b89a5b
bbb3.0: graphql container, postgres with multiple db, repo updates
alangecker Jan 7, 2024
4216d36
reduce logging verbosity
alangecker Jan 7, 2024
72bd71c
update base images
alangecker Jan 7, 2024
a3f346d
all data under ./data instead in docker volumes
alangecker Jan 7, 2024
cdfe3a8
bbb3.0: add webrtc-recorder
alangecker Jan 7, 2024
13f55a1
fs_cli: fix for wrong path to functions.sh
alangecker Jan 7, 2024
b4918c5
dev mode: allow presentation access via http
alangecker Jan 7, 2024
20315c1
add missing bbb-webrtc-recorder submodule
alangecker Jan 7, 2024
082e129
adding bbb-export-annotations configurations -> to build it see neces…
Feb 29, 2024
c740f55
v3.0.0-beta.5: basic working functionality
alangecker Nov 24, 2024
c298e05
office-conversion: switch from jodconverter to collabora
alangecker Nov 24, 2024
3181806
webrtc-sfu: announce correct webrtc IP
alangecker Nov 24, 2024
e6c1b47
.gitignore: conf/bbb-html5.yml
alangecker Nov 24, 2024
325690e
v3.0.0-beta.5: recording via bbb-webrtc-recorder and etherpad export
alangecker Nov 24, 2024
ca0a159
new https proxy based on haproxy, also proxying TURN
alangecker Nov 24, 2024
6623813
greenlight: latest version and fix for failing API requests due to se…
alangecker Nov 24, 2024
d6c1b0a
dev.env: coturn is now a fixed/non-optional component
alangecker Nov 24, 2024
17aa499
dev mode: use local networks IP instead of docker internal 10.7.7.1
alangecker Nov 25, 2024
1a552e7
nginx: stay running even when depending container restart
alangecker Nov 25, 2024
ed77742
split out IGNORE_TLS_CERT_ERRORS from DEV_MODE
alangecker Nov 25, 2024
7c0c55a
html5 dev mode
alangecker Nov 25, 2024
56d8f76
graphql-actions dev mode
alangecker Nov 25, 2024
1a79f73
bbb-graphql-middleware dev mode
alangecker Nov 25, 2024
4afa12b
lets encrypt: email required, remove staging flag
alangecker Nov 28, 2024
329b6bf
freeswitch: SIP dial in support
alangecker Nov 28, 2024
340e9fd
setup: fix LETSENCRYPT_EMAIL not being set
alangecker Nov 28, 2024
8704ec2
haproxy: correctly identify http traffic
alangecker Nov 29, 2024
8619025
ignore missing LETSENCRYPT_EMAIL in dev mode
alangecker Nov 29, 2024
ca63812
recordings: fix missing directories
alangecker Nov 29, 2024
d654c89
Merge pull request #322 from ben-ba/v2.7.3
alangecker Nov 29, 2024
7ad3a33
bbb-export-annotations: fix moved bigbluebutton volume
alangecker Nov 30, 2024
f99a163
etherpad 2.2.6
alangecker Dec 5, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
File renamed without changes.
Empty file added .cache/go/.gitkeep
Empty file.
Empty file added .cache/meteor/.gitkeep
Empty file.
Empty file added .cache/npm/.gitkeep
Empty file.
10 changes: 9 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -14,5 +14,13 @@ docker-compose.override.yml

# App generated
.env
.env.bak
postgres-data
greenlight-data
greenlight-data

.cache/*/**
!.cache/*/.gitkeep
data/*
!data/.gitkeep

conf/bbb-html5.yml
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -22,3 +22,6 @@
[submodule "repos/bbb-pads"]
path = repos/bbb-pads
url = https://github.com/bigbluebutton/bbb-pads.git
[submodule "repos/bbb-webrtc-recorder"]
path = repos/bbb-webrtc-recorder
url = https://github.com/bigbluebutton/bbb-webrtc-recorder.git
8 changes: 3 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
<img width="1012" alt="bbb-docker-banner" src="https://user-images.githubusercontent.com/1273169/141153216-0386cd4e-0aaf-473a-8f42-a048e52ed0d7.png">


# 📦 BigBlueButton 2.7 Docker
# 📦 BigBlueButton 3.0 Docker

Version: 2.7.3 | [Changelog](CHANGELOG.md) | [Issues](https://github.com/bigbluebutton/docker/issues) | [Upgrading](docs/upgrading.md) | [Development](docs/development.md)
Version: 3.0.0-beta.5 | [Changelog](CHANGELOG.md) | [Issues](https://github.com/bigbluebutton/docker/issues) | [Upgrading](docs/upgrading.md) | [Development](docs/development.md)

## Features
- Easy installation
Expand All @@ -18,9 +18,7 @@ Version: 2.7.3 | [Changelog](CHANGELOG.md) | [Issues](https://github.com/bigblue
- Linux (it will not work under Windows/WSL)
- Root access (bbb-docker uses host networking, so it won't work with Kubernetes, any "CaaS"-Service, etc.)
- Public IPv4 (expect issues with a firewall / NAT)

## What is not implemented yet
- bbb-lti
- firewall allows internal networking (e.g. for ufw: `ufw allow 10.7.7.0/24`)

## Install
1. Ensure the requirements above are fulfilled (it really doesn't work without them)
Expand Down
17 changes: 0 additions & 17 deletions conf/dialplan_public/example.xml

This file was deleted.

Empty file added data/.gitkeep
Empty file.
170 changes: 170 additions & 0 deletions dev.env
Original file line number Diff line number Diff line change
@@ -0,0 +1,170 @@
# fixed environment for an working dev setup

# enables
# - html5: webpack dev server
# - bbb-grahql-actions: watch & restart
# - bbb-graphql-middleware: building on start
DEV_MODE=true

# accept self signed certificates
IGNORE_TLS_CERT_ERRORS=true

# user and group used for
# this avoid any file permission issues with files
# created inside docker (e.g. node_modules)
BBB_DEV_UID=1000
BBB_DEV_GID=1000


# ====================================
# ADDITIONS to BigBlueButton
# ====================================
# (place a '#' before to disable them)

# HTTPS Proxy
# fully automated Lets Encrypt certificates
ENABLE_HTTPS_PROXY=true
# If your network doesn't allow access to DNS at 8.8.8.8 specify your own resolvers
#RESOLVER_ADDRESS=x.x.x.x

# Greenlight Frontend
# https://docs.bigbluebutton.org/greenlight/gl-overview.html
ENABLE_GREENLIGHT=true

# Enable Webhooks
# used by some integrations
ENABLE_WEBHOOKS=true

# Prometheus Exporter
# serves the bigbluebutton-exporter under following URL:
# https://yourdomain/bbb-exporter
ENABLE_PROMETHEUS_EXPORTER=true
#ENABLE_PROMETHEUS_EXPORTER_OPTIMIZATION=true

# Recording
# IMPORTANT: this is currently a big privacy issues, because it will
# record everything which happens in the conference, even when the button
# suggets, that it does not.
# https://github.com/bigbluebutton/bigbluebutton/issues/9202
# make sure that you get peoples consent, before they join a room
ENABLE_RECORDING=true
#REMOVE_OLD_RECORDING=false
#RECORDING_MAX_AGE_DAYS=14

# ====================================
# SECRETS
# ====================================
# important! change these to any random values
SHARED_SECRET=SuperSecret
ETHERPAD_API_KEY=SuperEtherpadKey
RAILS_SECRET=SuperRailsSecret_SuperRailsSecret
POSTGRESQL_SECRET=SuperPostgresSecret
FSESL_PASSWORD=SuperFreeswitchESLPassword
#TURN_SECRET=


# ====================================
# CONNECTION
# ====================================

DOMAIN=10.7.7.1

EXTERNAL_IPv4=10.7.7.1
EXTERNAL_IPv6=

# STUN SERVER
# stun.freeswitch.org
STUN_IP=147.182.188.245
STUN_PORT=3478

# Allowed SIP IPs
# due to high traffic caused by bots, by default the SIP port is blocked.
# but you can allow access by your providers IP or IP ranges (comma seperated)
# Hint: if you want to allow requests from every IP, you can use 0.0.0.0/0
SIP_IP_ALLOWLIST=0.0.0.0/0


# ====================================
# CUSTOMIZATION
# ====================================

# use following lines to replace the default welcome message and footer
WELCOME_MESSAGE="Welcome to <b>%%CONFNAME%%</b>!<br><br>For help on using BigBlueButton see these (short) <a href='https://www.bigbluebutton.org/html5' target='_blank'><u>tutorial videos</u></a>.<br><br>To join the audio bridge click the speaker button. Use a headset to avoid causing background noise for others."
WELCOME_FOOTER="This server is running <a href='https://docs.bigbluebutton.org/'' target='_blank'><u>BigBlueButton</u></a>."

# use following line for an additional SIP dial-in message
#WELCOME_FOOTER="This server is running <a href='https://docs.bigbluebutton.org/' target='_blank'><u>BigBlueButton</u></a>. <br><br>To join this meeting by phone, dial:<br> INSERT_YOUR_PHONE_NUMBER_HERE<br>Then enter %%CONFNUM%% as the conference PIN number."

# for a different default presentation, place the pdf file in ./conf/ and
# adjust the following path
DEFAULT_PRESENTATION=./mod/nginx/default.pdf

# language of sound announcements
# options:
# - en-ca-june - EN Canadian June
# - en-us-allison - US English Allison
# - en-us-callie - US English Callie (default)
# - de-de-daedalus3 - German by Daedalus3 (https://github.com/Daedalus3/freeswitch-german-soundfiles)
# - es-ar-mario - Spanish/Argentina Mario
# - fr-ca-june - FR Canadian June
# - pt-br-karina - Brazilian Portuguese Karina
# - ru-RU-elena - RU Russian Elena
# - ru-RU-kirill - RU Russian Kirill
# - ru-RU-vika - RU Russian Viktoriya
# - sv-se-jakob - Swedish (Sweden) Jakob
# - zh-cn-sinmei - Chinese/China Sinmei
# - zh-hk-sinmei - Chinese/Hong Kong Sinmei
SOUNDS_LANGUAGE=en-us-callie

# set to true to disable announcements "You are now (un-)muted"
DISABLE_SOUND_MUTED=false

# set to true to disable announcement "You are the only person in this conference"
DISABLE_SOUND_ALONE=false

# set to false to disable the learning dashboard
ENABLE_LEARNING_DASHBOARD=true

# ====================================
# GREENLIGHT CONFIGURATION
# ====================================

### SMTP CONFIGURATION
# Emails are required for the basic features of Greenlight to function.
# Please refer to your SMTP provider to get the values for the variables below
#SMTP_SENDER_EMAIL=
#SMTP_SENDER_NAME=
#SMTP_SERVER=
#SMTP_PORT=
#SMTP_DOMAIN=
#SMTP_USERNAME=
#SMTP_PASSWORD=
#SMTP_AUTH=
#SMTP_STARTTLS_AUTO=true
#SMTP_STARTTLS=false
#SMTP_TLS=false
#SMTP_SSL_VERIFY=true

### EXTERNAL AUTHENTICATION METHODS
#
#OPENID_CONNECT_CLIENT_ID=
#OPENID_CONNECT_CLIENT_SECRET=
#OPENID_CONNECT_ISSUER=
#OPENID_CONNECT_REDIRECT=

# To enable hCaptcha on the user sign up and sign in, define these 2 keys
#HCAPTCHA_SITE_KEY=
#HCAPTCHA_SECRET_KEY=

# Set these if you are using a Simple Storage Service (S3)
# Uncomment S3_ENDPOINT only if you are using a S3 OTHER than Amazon Web Service (AWS) S3.
#S3_ACCESS_KEY_ID=
#S3_SECRET_ACCESS_KEY=
#S3_REGION=
#S3_BUCKET=
#S3_ENDPOINT=

# Define the default locale language code (i.e. 'en' for English) from the fallowing list:
# [en, ar, fr, es]
#DEFAULT_LOCALE=en

Loading