How To Install Jekyll on Ubuntu 20.04 LTS

Install Jekyll on Ubuntu 20.04

In this tutorial, we will show you how to install Jekyll on Ubuntu 20.04 LTS. For those of you who didn’t know, Jekyll is a static site generator with a templating system that can be adapted for many types of websites, including blogs. It can be run on a server, or run locally and the generated files uploaded to a server. It is the default software used by Github Pages.

This article assumes you have at least basic knowledge of Linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple and assumes you are running in the root account, if not you may need to add ‘sudo‘ to the commands to get root privileges. I will show you the step-by-step installation of Jekyll in Ubuntu 20.04 (Focal Fossa). You can follow the same instructions for Ubuntu 18.04, 16.04, and any other Debian-based distribution like Linux Mint.


  • A server running one of the following operating systems: Ubuntu 20.04, 18.04, 16.04, and any other Debian-based distribution like Linux Mint.
  • It’s recommended that you use a fresh OS install to prevent any potential issues.
  • SSH access to the server (or just open Terminal if you’re on a desktop).
  • A non-root sudo user or access to the root user. We recommend acting as a non-root sudo user, however, as you can harm your system if you’re not careful when acting as the root.

Install Jekyll on Ubuntu 20.04 LTS Focal Fossa

Step 1. First, make sure that all your system packages are up-to-date by running the following apt commands in the terminal.

sudo apt update
sudo apt upgrade

Step 2. Installing Ruby.

Run the following command to install Ruby on the Ubuntu system:

sudo apt install ruby-full build-essential zlib1g-dev

You can check out your Ruby version using the following command:

ruby --version

Step 3. Installing Jekyll on Ubuntu 20.04.

We’ll use gem to install Jekyll itself as well as Bundler, which manages gem dependencies. Avoid installing RubyGems packages (called gems) as the root user. Instead, set up a gem installation directory for your user account. The following commands will add environment variables to your ~/.bashrc file to configure the gem installation path:

echo '# Install Ruby Gems to ~/gems' >> ~/.bashrc
echo 'export GEM_HOME="$HOME/gems"' >> ~/.bashrc
echo 'export PATH="$HOME/gems/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc

Finally, install Jekyll and Bundler:

gem install jekyll bundler

Step 4. Create a new website using Jekyll.

Now we are ready to create the blog and run the server. The below-given command creates the directory called idrootweb. You can give another name of your choice. In this directory, the Jekyll configuration file and setup are all set:

cd /home
jekyll new idrootblog

Change to newly created directory idrootweb or the new name which you have given at the time of using command Jekyll:

cd idrootweb

Start the Jekyll application and replace the below-mentioned IP address with your IP:

jekyll server --host &

Step 5. Configure Firewall.

We’ll need to open port 4000, the default port for the Jekyll development server:

sudo ufw allow 4000
sudo ufw enable

Step 6. Accessing Jekyll Web Interface.

Jekyll will be available on HTTP port 4000 by default. Open your favorite browser and navigate to or http://server-ip-address:4000/

Install Jekyll on Ubuntu 20.04

Congratulations! You have successfully installed Jekyll. Thanks for using this tutorial for installing Jekyll on Ubuntu 20.04 LTS  Focal Fossa system. For additional help or useful information, we recommend you to check the official Jekyll website.

VPS Manage Service Offer
If you don’t have time to do all of this stuff, or if this is not your area of expertise, we offer a service to do “VPS Manage Service Offer”, starting from $10 (Paypal payment). Please contact us to get the best deal!


r00t is a seasoned Linux system administrator with a wealth of experience in the field. Known for his contributions to, r00t has authored numerous tutorials and guides, helping users navigate the complexities of Linux systems. His expertise spans across various Linux distributions, including Ubuntu, CentOS, and Debian. r00t's work is characterized by his ability to simplify complex concepts, making Linux more accessible to users of all skill levels. His dedication to the Linux community and his commitment to sharing knowledge makes him a respected figure in the field.
Back to top button