How to Install NestaCMS on Ubuntu Linux

NestaCMS is an open source, markdown (file-file) content management system (CMS) built on Ruby using the Sinatra web framework. It makes it super easy to develop and design static websites for anyone knows how to write in markdown style.

Nesta is easily extended using the Sinatra web framework. There’s no database to configure – everything is stored in text files.

Using NestaCMS to edit your content on the web should be easy and fun. No need for learning templating and HTML. NestaCMS hides most of that stuff and focuses on what matters most.….

NestaCMS offers features that may not be available to other PHP based CMS, like WordPress Joomla or Drupal… 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…

For more about NestaCMS , check its homepage.

This brief tutorial is going to show students and new users how to install NestaCMS on Ubuntu 16.04 | 18.04 and 18.10 systems.

These are the packages we’re going to be setting up.

Install 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

Then 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 libpq-dev 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. visit 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

Install Node.js

Now that Ruby environment is set up, run the commands below to install 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 NestaCMS.

Step 3: Install NestaCMS

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

gem install nesta
gem install bundler
nesta new nestacms

Next change into the NestaCMS folder and install there.

cd ~/nestacms

Then run the commands to install nesta demo content and configure the server.

bundle install
nesta demo:content
bundle exec mr-sparkle config.ru

After a while, necessary packages should be installed and configured, ready to use.

Now open your browser and browse to the hostname follow by port # 8080


You should see NestaCMS home page.

NestaCMS Ubuntu Install

Congratulation! You have successfully installed NestaCMS platform on Ubuntu 16.04 | 18.04 | 18.10

You may also like the post below: