How to Install Jekyll CMS on Ubuntu 16.04 | 18.04 | 18.10

Jekyll content management system (CMS) is a simple, extendable, static site generator. It helps you create your personal or business websites in minutes by creating markup pages and content.. Jekyll offers features that may not be available to other PHP based CMS, like WordPress Joomla or Drupal.

For one it doesn’t require a database and you don’t have to worry about comments management and frequent updates. All you do is write your content and its instantly published.

Other features like permalinks, categories, pages, posts, and custom layouts are all top content and SEO friendly.

This brief tutorial is going to show students and new users how to install Jekyll CMS on Ubuntu 16.04 | 18.04 and 18.10 systems.These are the packages we’re going to be setting up.

  • Ruby version 2.5.3
  • Rails version 5.2.1
  • MariaDB

Step 1: Installing Ruby

To install Ruby and Rails on Ubuntu, you’ll need  to install some dependencies. To make that happen, install Node.js and Yarn repositories. This will make installing the dependencies easier.

First install these curl and git packages.

sudo apt update
sudo apt install curl git

Than run the commands below to add Node.js and Yarn repositories and keys to your system. Then install some core packages to get your environment going.

curl -sL  | sudo -E bash -
curl -sS  | sudo apt-key add -
echo "deb  stable main" | sudo tee /etc/apt/sources.list.d/yarn.list

sudo apt-get update
sudo apt-get install nodejs yarn zlib1g-dev build-essential libssl-dev libreadline-dev libyaml-dev libsqlite3-dev sqlite3 libxml2-dev libxslt1-dev libcurl4-openssl-dev software-properties-common libffi-dev

When you’re done. continue below:

After adding the repositories and installing necessary packages above, install Ruby with your local profile settings using rbenv. you’ll then use rbenv to install ruby-build.

cd ~/
git clone  ~/.rbenv
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(rbenv init -)"' >> ~/.bashrc
exec $SHELL

git clone  ~/.rbenv/plugins/ruby-build
echo 'export PATH="$HOME/.rbenv/plugins/ruby-build/bin:$PATH"' >> ~/.bashrc
exec $SHELL

After setting up your local profile. run the commands below to install Ruby version 2.5.3. If a newer version is available, replace the version number to that. vist this site to find out Ruby latest versions.

rbenv install 2.5.3
rbenv global 2.5.3

To verify that Ruby is installed, run the commands below:

ruby -v

You should see similar lines as below:

ruby 2.5.3p105 (2018-10-18 revision 65156) [x86_64-linux]

Another package management you’ll want to install is bundler. to do that, run the commands below

gem install bundler

Now run the command below after installing bundler.

rbenv rehash

Step 2: Install Rails

Now that Ruby environment is set up, run the commands below to install Rails. Rails can be installed from a Node.Js. Run the commands below to install Node.js repository, then install Node.js package.

curl -sL  | sudo -E bash -
sudo apt-get install -y nodejs

Now that Node.js is installed, run the commands below to install Rails.

gem install rails -v 5.2.1

Don’t forget to rehash your rbenv environment installing install new packages.

rbenv rehash

To verify if Rails is installed, run the commands below.

rails -v

You should see something similar to the lines below:

Rails 5.2.1

Step 3: Install Jekyll

Now that your environment is ready, run the commands below to install Jekyll and build your first site.  Next, run the commands below

gem install jekyll

After that run the commands below to create a new site called example.com in your home directory.

cd ~/
jekyll new example.com

Next, change into the new example.com folder and run the commands below.

cd ~/example.com/
gem install bundler --pre
gem install minima

Finally, run the commands below to start the server.

bundle exec jekyll serve

It should start on the local IP followed by port 4000

Configuration file: /home/richard/example.com/_config.yml
            Source: /home/richard/example.com
       Destination: /home/richard/example.com/_site
 Incremental build: disabled. Enable with --incremental
      Generating. 
       Jekyll Feed: Generating feed for posts
                    done in 0.872 seconds.
 Auto-regeneration: enabled for '/home/richard/example.com'
    Server address: 
  Server running. press ctrl-c to stop.

That’s it!
Now open your browser and browse to the server hostname or IP followed by port 4000

You should see the page below:

Jekyll ubuntu install

That’s it!

You may also like the post below: