Hier zeige ich euch, wie ihr das Tool BigBlueButton in wenigen Minuten auf eurem Server installieren könnt.

Ich liebe ja Docker Installationen. Zu diesem Projekt gibt es aber nur sehr alte Docker Projekte und diese funktionieren ohne Anpassungen nicht korrekt.

Daher zeige ich euch hier, wie ihr BigBlueButton mittels Installer-Skript automatisiert installieren könnt.

Während der Installation erscheinen auch vermehrt Meldungen, dass die Programme, welche installiert werden sollen, veraltet sind. Beispielsweise hier:

Die offizielle Anleitung sieht hier jedoch auch vor, dass komplett veraltete / nicht mehr supportete Versionen installiert werden sollen.

Wichtig

  • Die Installation lässt sich nur unter Ubuntu 16.04 64-bit durchführen.
  • Der Installer installiert / konfiguriert nginx und sehr viele Sachen. Nutzt das Skript also bitte nicht auf eurem derzeitigen Server sondern mietet / kauft euch einen eigenen Server für BigBlueButton.

1. Minimalanforderungen an den Server

  • Ubuntu 16.04 64-bit OS running Linux kernel 4.x
  • 8 GB of memory with swap enabled (16 GB of memory is better)
  • 4 CPU cores (8 is better)
  • TCP ports 80 and 443 are accessible
  • UDP ports 16384 – 32768 are accessible
  • Port 80 is not in use by another application

Quelle: https://docs.bigbluebutton.org/2.2/install.html

2. Installations-Skript

Hier verwende ich das offizielle Skript von BigBlueButton.

2.1 Funktionen des Skripts

Um alle Funktionen zu sehen, gebt ihr folgenden Code ein:

wget -qO- https://ubuntu.bigbluebutton.org/bbb-install.sh | bash -s -- -h

Nun bekommt ihr folgendes angezeigt:

Script for installing a BigBlueButton 2.2 (or later) server in about 15 minutes.

This script also supports installation of a coturn (TURN) server on a separate server.

USAGE:
    wget -qO- https://ubuntu.bigbluebutton.org/bbb-install.sh | bash -s -- [OPTIONS]

OPTIONS (install BigBlueButton):

  -v <version>           Install given version of BigBlueButton (e.g. 'xenial-220') (required)

  -s <hostname>          Configure server with <hostname>
  -e <email>             Email for Let's Encrypt certbot
  -x                     Use Let's Encrypt certbot with manual dns challenges
  -a                     Install BBB API demos
  -g                     Install Greenlight
  -c <hostname>:<secret> Configure with coturn server at <hostname> using <secret>

  -m <link_path>         Create a Symbolic link from /var/bigbluebutton to <link_path>

  -p <host>              Use apt-get proxy at <host>
  -r <host>              Use alternative apt repository (such as packages-eu.bigbluebutton.org)

  -d                     Skip SSL certificates request (use provided certificates from mounted volume)

  -h                     Print help

OPTIONS (install coturn only):

  -c <hostname>:<secret> Setup a coturn server with <hostname> and <secret> (required)
  -e <email>             Configure email for Let's Encrypt certbot (required)

OPTIONS (install Let's Encrypt certificate only):

  -s <hostname>          Configure server with <hostname> (required)
  -e <email>             Configure email for Let's Encrypt certbot (required)
  -l                     Install Let's Encrypt certificate (required)
  -x                     Use Let's Encrypt certbot with manual dns challenges (optional)


EXAMPLES:

Sample options for setup a BigBlueButton server

    -v xenial-220
    -v xenial-220 -s bbb.example.com -e info@example.com
    -v xenial-220 -s bbb.example.com -e info@example.com -g
    -v xenial-220 -s bbb.example.com -e info@example.com -g -c turn.example.com:1234324

Sample options for setup of a coturn server (on a different server)

    -c turn.example.com:1234324 -e info@example.com

SUPPORT:
    Community: https://bigbluebutton.org/support
         Docs: https://github.com/bigbluebutton/bbb-install

2.2 BigBlueButton mit TLS und Greenlight installieren

Ich habe für mich die Option mit TLS (Let’s Encrypt) und dem Frontend Greenlight gewählt. Dazu gebt ihr folgenden Code ein:

wget -qO- https://ubuntu.bigbluebutton.org/bbb-install.sh | bash -s -- -v xenial-220 -s meinedomain.de -e eure@email.de -g

Notwendige Anpassungen:

  • Ihr müsst noch eure Domain anpassen.
  • Ihr müsst noch die E-Mail anpassen, welche für Let’s encrypt genutzt wird.

Wenn alles funktioniert hat, sollte ihr nach einigen Minuten (je nach Server) folgendes sehen:

Starting BigBlueButton


BigBlueButton Server 2.2.5 (1848)
                    Kernel version: 4.4.0-177-generic
                      Distribution: Ubuntu 16.04.6 LTS (64-bit)
                            Memory: 16432 MB
                         CPU cores: 4

/usr/share/bbb-web/WEB-INF/classes/bigbluebutton.properties (bbb-web)
       bigbluebutton.web.serverURL: https://technikrebell.de
                defaultGuestPolicy: ALWAYS_ACCEPT
                 svgImagesRequired: true

/etc/nginx/sites-available/bigbluebutton (nginx)
                       server name: xxx.de
                              port: 80, [::]:80
                              port: 443 ssl
                    bbb-client dir: /var/www/bigbluebutton

/var/www/bigbluebutton/client/conf/config.xml (bbb-client)
                Port test (tunnel): rtmp://xxx.de
                              red5: xxx.de
              useWebrtcIfAvailable: true

/opt/freeswitch/etc/freeswitch/vars.xml (FreeSWITCH)
                       local_ip_v4: 192.145.xxx.xxx
                   external_rtp_ip: stun:stun.freeswitch.org
                   external_sip_ip: stun:stun.freeswitch.org

/opt/freeswitch/etc/freeswitch/sip_profiles/external.xml (FreeSWITCH)
                        ext-rtp-ip: $${local_ip_v4}
                        ext-sip-ip: $${local_ip_v4}
                        ws-binding: :5066
                       wss-binding: 192.145.xxx.xxx:7443

/usr/local/bigbluebutton/core/scripts/bigbluebutton.yml (record and playback)
                     playback_host: xxx.de
                 playback_protocol: https
                            ffmpeg: 4.2.2-1bbb1~ubuntu16.04

/etc/bigbluebutton/nginx/sip.nginx (sip.nginx)
                        proxy_pass: 192.145.xxx.xxx

/usr/local/bigbluebutton/bbb-webrtc-sfu/config/default.yml (Kurento SFU)
                        kurento.ip: 192.145.xxx.xxx
                       kurento.url: ws://127.0.0.1:8888/kurento
                    localIpAddress: 192.145.xxx.xxx
               recordScreenSharing: true
                     recordWebcams: true
                  codec_video_main: VP8
               codec_video_content: VP8

/usr/share/meteor/bundle/programs/server/assets/app/config/settings.yml (HTML5 client)
                             build: 874
                        kurentoUrl: wss://xxx.de/bbb-webrtc-sfu
                  enableListenOnly: true


# Potential problems described below
.........................................

3. Quellen

https://docs.bigbluebutton.org/2.2/install.html

https://github.com/bigbluebutton/bbb-install

https://github.com/bigbluebutton/docker

Teile diesen Beitrag
Christian

Categories:

5 Kommentare

  1. Kannst du mir einen Tip geben, was da schief läuft.

    Restarting BigBlueButton 2.2.9 …
    Stopping BigBlueButton
    Starting BigBlueButton
    Job for freeswitch.service failed because the control process exited with error code. See „systemctl status freeswitch.service“ and „journalctl -xe“ for details.

    # Potential problems described below
    grep: /opt/freeswitch/var/log/freeswitch/freeswitch.log: No such file or directory

    #
    # Error: Unable to connect to the FreeSWITCH Event Socket Layer on port 8021
    #
    …………………
    # Error: Could not detect FreeSWITCH listening on port 5060

    # Error: FreeSWITCH failed to start with SETSCHEDULER error, see
    #
    # http://docs.bigbluebutton.org/2.2/troubleshooting.html#freeswitch-fails-to-start-with-a-setscheduler-error
    #
    root@h2886390:~# systemctl status freeswitch.service
    ● freeswitch.service – freeswitch
    Loaded: loaded (/lib/systemd/system/freeswitch.service; enabled; vendor preset: enabled)
    Active: failed (Result: start-limit-hit) since Di 2020-05-12 22:45:43 CEST; 1min 4s ago
    Process: 14413 ExecStart=/opt/freeswitch/bin/freeswitch -u freeswitch -g daemon -ncwait $DAEMON_OPTS (code=exited, status=214/SETSCHEDULER)

  2. Danke, inzwischen läuft bigbluebutton, aber ich kann greenlight nicht installieren, weil docker nicht funktioniert. Hast du hier eine Idee?

    root@h2886390:~# systemctl status docker
    ● docker.service – Docker Application Container Engine
    Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
    Active: failed (Result: start-limit-hit) since Mi 2020-05-13 10:08:50 CEST; 21s ago
    Docs: https://docs.docker.com
    Process: 5822 ExecStart=/usr/bin/dockerd -H fd:// –containerd=/run/containerd/containerd.sock (code=exited, status=1/FAILURE)
    Main PID: 5822 (code=exited, status=1/FAILURE)

  3. Soweit so gut. Das Skript ist durchgelaufen, der Server gibt Antwort.
    Vielen Dank dafür 🙂

    Nun suche ich den Benutzernamen und Kennwort zum anmelden :/

    Hast du einen Tipp für mich?

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.