install BigBlueButton Ubuntu 14.04



= Before You Install =

*Note:* The packaging is for *Ubuntu 14.04 64-bit only*. 

The requirements are

  * Ubuntu 14.04 64-bit
  * 4 GB of memory (8 GB is better)
  * Quad-core 2.6 GHZ CPU (or faster)
  * Ports 80, 1935, 9123 accessible
  * Port 80 is *not* used by another application
  * 500G of free disk space (or more) for recordings
  * 100 Mbits/sec bandwidth (upstream and downstream)

In addition to the above, the locale of the server must be en_US.UTF-8. Furthermore, the contents of `/etc/default/locale` must contain the single line `LANG="en_US.UTF-8"`.  You can verify this as below.

{{{
$ cat /etc/default/locale
LANG="en_US.UTF-8"
}}}

If you don't see `LANG="en_US.UTF-8"`, then do the following

{{{
sudo apt-get install language-pack-en
sudo update-locale LANG=en_US.UTF-8
}}}

and the logout and log back into your session.  After the above, do `cat /etc/default/locale` again and verify you see only the single line `LANG="en_US.UTF-8"`.  Note: if you see an additional line `LC_ALL=en_US.UTF-8`, then remove the setting for `LC_ALL` before continuing.


Also, check that you are running under 64-bit.

{{{
$ uname -m
x86_64
}}}

You should see `x86_64`.  


= Installing !BigBlueButton 0.90 =

These instructions assume you do not have a previous version of !BigBlueButton installed.  


== 1. Update your server == 

The following steps will install 0.9.0.

You first need to give your server access to the !BigBlueButton package repository.

In a terminal window, copy and paste the following commands.

{{{
# Add the BigBlueButton key
wget http://ubuntu.bigbluebutton.org/bigbluebutton.asc -O- | sudo apt-key add -

*Note:* These steps are draft and will be replacing the 'XXX' with the package URL

# Add the BigBlueButton repository URL and ensure the multiverse is enabled
echo "deb http://YYY/XXX/ bigbluebutton-trusty main" | sudo tee /etc/apt/sources.list.d/bigbluebutton.list
}}}

{{{
sudo apt-get update
sudo apt-get dist-upgrade
}}}

If you've not updated in a while, apt-get may recommend you reboot your server after `dist-upgrade` finishes.  Do the reboot before proceeding to the next step.


== 2.  Install ffmpeg ==

== 3.  Install !BigBlueButton == 
We're now ready to install !BigblueButton. Type

{{{
   sudo apt-get install bigbluebutton
}}}


This single command is where all the magic happens.  This command installs *all* of !BigBlueButton components with their dependencies.  The packaging will do all the work for you to install and configure your !BigBlueButton server.

If you are behind a HTTP Proxy, you will get an error from the package bbb-record-core.  You can resolve this by [#Unable_to_install_gems manually installing the gems].

If you get an error message
{{{
...... Error: FreeSWITCH didn't start 
}}}
you can ignore it as we'll do a clean restart of all the components in step 7.


== 4. Install API Demos ==

To interactively test your !BigBlueButton server, you can install a set of API demos.  

{{{
   sudo apt-get install bbb-demo
}}}

You'll need the bbb-demo package installed if you want to join the Demo Meeting from your !BigBlueButton server's welcome page.  This is the same welcome page you see at [http://dev081.bigbluebutton.org dev081 demo server].

Later on, if you wish to remove the API demos, you can enter the command

{{{
   sudo apt-get purge bbb-demo
}}}


== 7. Do a Clean Restart == 

To ensure !BigBlueButton has started cleanly, enter the following commands:

{{{
   sudo bbb-conf --clean
   sudo bbb-conf --check
}}}

The `--clean` option will clear out all the log files for !BigBlueButton.  The `--check` option will grep through the log files looking for errors.  

The output from `sudo bbb-conf --check` will display your current settings and, after the text, "** Potential problems described below **", print any potential configuration or startup problems it has detected. 




== Change the !BigBlueButton Server's IP ==

A common problem is the default install scripts in for !BigBlueButton configure it to list for an IP address, but if you are accessing your server via a DNS hostname, you'll see the 'Welcome to Nginx' message.

To change all of !BigBlueButton's configuration files to use a different IP address or hostname, enter

{{{
   sudo bbb-conf --setip <ip_address_or_hostname>
}}}

For more information see [BBBConf bbb-conf options]. 


== Unable to install gems ==
The install script for bbb-record-core needs to install a number of ruby gems.  However, if you are behind a HTTP_PROXY, then the install script for bbb-record-core will likely exit with an error.  This occurs because the bash environment for bbb-record-core will not have a value for HTTP_PROXY.

You can resolve this by manually installing the gems using the following script.
{{{
#!/bin/bash

export HTTP_PROXY="<your_http_proxy>"

gem install --http-proxy $HTTP_PROXY builder -v 2.1.2
gem install --http-proxy $HTTP_PROXY diff-lcs -v 1.1.2
gem install --http-proxy $HTTP_PROXY json -v 1.4.6
gem install --http-proxy $HTTP_PROXY term-ansicolor -v 1.0.5
gem install --http-proxy $HTTP_PROXY gherkin -v 2.2.9
gem install --http-proxy $HTTP_PROXY cucumber -v 0.9.2
gem install --http-proxy $HTTP_PROXY curb -v 0.7.15
gem install --http-proxy $HTTP_PROXY mime-types -v 1.16
gem install --http-proxy $HTTP_PROXY nokogiri -v 1.4.4
gem install --http-proxy $HTTP_PROXY open4 -v 1.3
gem install --http-proxy $HTTP_PROXY rack -v 1.2.2
gem install --http-proxy $HTTP_PROXY redis -v 2.1.1
gem install --http-proxy $HTTP_PROXY redis-namespace -v 0.10.0
gem install --http-proxy $HTTP_PROXY tilt -v 1.2.2
gem install --http-proxy $HTTP_PROXY sinatra -v 1.2.1
gem install --http-proxy $HTTP_PROXY vegas -v 0.1.8
gem install --http-proxy $HTTP_PROXY resque -v 1.15.0
gem install --http-proxy $HTTP_PROXY rspec-core -v 2.0.0
gem install --http-proxy $HTTP_PROXY rspec-expectations -v 2.0.0
gem install --http-proxy $HTTP_PROXY rspec-mocks -v 2.0.0
gem install --http-proxy $HTTP_PROXY rspec -v 2.0.0
gem install --http-proxy $HTTP_PROXY rubyzip -v 0.9.4
gem install --http-proxy $HTTP_PROXY streamio-ffmpeg -v 0.7.8
gem install --http-proxy $HTTP_PROXY trollop -v 1.16.2
}}}

Once all the gems are installed, you need to tell !BigBlueButton install scripts `bbb-record-core` to not try to install the gems anymore.  Edit the file `/var/lib/dpkg/info/bbb-record-core.preinst` and comment out the line

{{{
#                        gem install $gem
}}}

Then run

{{{
sudo apt-get install -f
}}}

, ,

Leave a Reply