This repository contains the documentation for BigBlueButton located at docs.bigbluebutton.org.
This repository uses Jekyll to build the documentation site. When making changes to the docs, you should setup Jekyll to build it locally. That way, you can preview any changes before creating pull requests.
An easy way to generate the BigBlueButton documentation locally and see the effect of your changes before committing is to create a Docker image that runs Jekyll.
If you have installed Docker, then you can create a docker image called github-pages
by switching to the repository directory and executing the following command:
docker build -t github-pages .
After the images builds, then you can render it locally using the command
docker run --rm -v ~/bigbluebutton.github.io:/site -p 4000:4000 github-pages serve --watch --host 0.0.0.0
When you run this command you'll see
$ docker run --rm -v ~/bigbluebutton.github.io:/site -p 4000:4000 github-pages serve --watch --host 0.0.0.0
Configuration file: /site/_config.yml
Configuration file: /site/_config.yml
Source: /site
Destination: /site/_site
Incremental build: disabled. Enable with --incremental
Generating...
done in 8.521 seconds.
Auto-regeneration: enabled for '/site'
Configuration file: /site/_config.yml
Server address: http://0.0.0.0:4000/
Server running... press ctrl-c to stop.
And you can now view the site using the URL http://localhost:4000/. If the Docker approach does not work, you can setup Jekyll using the steps below.
To install Ruby, we suggest the use of rbenv.
But you have other options:
- Using RVM: see this page.
- Using apt packages.
- From source.
From now on, we will assume you will use rbenv, so if you decide for another method you might have to adapt some of commands in the rest of this guide.
The commands below will show you how to install rbenv. In short, this is what you will be doing:
- Install rbenv
- Install the plugin ruby-build plugin, that will actually be used to install ruby
- Install the target ruby
- Install bundler
Important: if you have RVM installed, you should remove it first!
# Install rbenv
$ git clone https://github.com/rbenv/rbenv.git ~/.rbenv
$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile
$ echo 'eval "$(rbenv init -)"' >> ~/.bash_profile
$ source ~/.bash_profile
# install ruby build
$ git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build
# clone this repo
$ git clone https://github.com/bigbluebutton/bigbluebutton.github.io.git
# install the targeted version of ruby
$ cd bigbluebutton.github.io
$ rbenv install
$ rbenv rehash
$ rbenv version
> 2.2.1 (set by (...)/bigbluebutton.github.io/.ruby-version)
# install bundler
$ gem install bundler
$ rbenv rehash
At this point you have the correct version of Ruby installed, now you have to install the site dependencies. Enter the directory bigbluebutton.github.io and type
bundle install
This will install all the Jekyll components. Next, type
bundle exec jekyll serve --host=0.0.0.0
Jekyll will run a server on port 4000 that lets you see a live update of the site after you make a save of any file.
Freds-Air:bigbluebutton.github.io ffdixon$ jekyll serve
Configuration file: /Users/ffdixon/bigbluebutton.github.io/_config.yml
Source: /Users/ffdixon/bigbluebutton.github.io
Destination: /Users/ffdixon/bigbluebutton.github.io/_site
Generating...
done.
Auto-regeneration: enabled for '/Users/ffdixon/bigbluebutton.github.io'
Configuration file: /Users/ffdixon/bigbluebutton.github.io/_config.yml
Server address: http://0.0.0.0:4000/
Server running... press ctrl-c to stop.
You can now edit files locally, review changes locally, and push commits to GitHub.