Rails is one of the most popular ruby framework out there. And now, I want to try to run the simple app on Ubuntu 16.04 machine. it’s for testing purpose.
First, update the system and install essential dependencies:
$ sudo apt-get update $ sudo apt-get build-essential curl sudo vim
Install nodejs:
$ curl -sL https://deb.nodesource.com/setup_9.x | sudo -E bash - $ apt-get install nodejs
Create a dedicated user for the app, for example, ubuntu user. And this also make the ubuntu user with sudo privilege and run the command without password. Which is useful to run command that needs sudo privilege in the next steps.
$ useradd ubuntu -m $ echo 'ubuntu ALL=(root) NOPASSWD: ALL' >> /etc/sudoers
swith to ubuntu user and install GPG keys for install rvm:
$ su - ubuntu ubuntu~$ gpg --keyserver hkp://keys.gnupg.net \ --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 \ 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
Download and install rvm:
ubuntu~$ \curl -sSL https://get.rvm.io | bash -s stable
Install ruby interpreter with version 2.5.1, you might wanna change it with your preferable version:
ubuntu~$ source ~/.rvm/scripts/rvm ubuntu~$ rvm install 2.5.1 ubuntu~$ rvm use 2.5.1 --default
Install rails with gem, and create new app without writing the Gemfile. Why? because everytime I create new app, I ended up facing errors with dependencies in Gemfile. So, it safe to setup new app without the Gemfile, we’ll create it manually later.
ubuntu~$ gem install rails ubuntu~$ rails new app --skip-gemfile
Create the Gemfile:
ubuntu~$ touch ~/app/Gemfile ubuntu~$ vim ~/app/Gemfile
Gemfile, fill these dependencies below into the file, save and exit:
source 'https://rubygems.org' gem 'rails', '~> 5.2.1' gem 'bootsnap', '~> 1.3.2' gem 'tzinfo-data', '~> 1.2018.5' gem 'listen', '~> 3.1.5' gem 'sqlite3'
Now, install all the gems with bundle:
ubuntu~$ cd ~/app ubuntu app~$ bundle install
Try run the rails:
ubuntu app~$ rails server -b 0.0.0.0