Rails is a web application development framework written in Ruby programming language. Designed to simplify web applications by making guesses about what every developer needs to get started. Allows you to write small codes while achieving more than most other languages and frameworks. Rails developers are knowledgeable and report that it makes web application development a lot more fun.
The command-line tool RVM (Ruby Version Manager) provides you with a solid development environment. RVM will let you manage and work with multiple Ruby environments and allow you to switch between them. The project repository is located in a git repository.
Getting Started with Rails via RVM
The quickest way of installing Ruby on Rails with RVM is to run the following commands.
We first need to update GNU Privacy Guard to the most latest version in order to contact a public key server and request a key associated with the given ID.
$sudo apt install gnupg2
We are using a user with
sudo privileges to update here, but the rest of the commands can be done by a regular user.
Secondly, we will be asking for the key to the RVM project to sign each RVM release. Having a public key for an RVM project allows us to verify the validity of the RVM release that we will download, signed with the same private key.
$gpg2 --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
If you find an error while running this command then you have to enter these 2 following commands:
curl -sSL https://rvm.io/mpapis.asc | gpg2 –import$
curl -sSL https://rvm.io/pkuczynski.asc | gpg2 --import$
Let’s now move into a writable location such as the
/tmp directory and then download the RVM script into a file:
We will use the curl command to download the RVM installation script from the project website. The command backslash ensures that we use the standard curl command and not any modified, aliased version.
We’ll add -s flag to indicate that the app should run in silent mode and -s flag to remove some of this to allow it to collapse in output errors if it is unsuccessful. -L flag prompts the app to follow a redirect, and finally -o flag indicates the output of the file instead of the normal output.
Putting all these elements our command will look like this:
$curl -sSL https://get.rvm.io -o rvm.sh
After, it is downloaded if user will like to inspect the script before applying it, then use this command:
After that, we can bring it to
bash to install the latest stable Rails version which will also pull in the associated latest stable release of Ruby.
$ cat /tmp/rvm.sh | bash -s stable --rails
During the installation process, you may be asked for your normal user password. Once the installation is complete, locate the RVM scripts in the installed directory, which will usually be in your home / username directory.
$ source /home/sammy/.rvm/scripts/rvm
Installing Specific Ruby and Rails Versions
If you need to install the latest version of Ruby instead of the latest one, you’ll need to do it with RVM. Firstly, you have to check which versions are available by listing them.
$ rvm list known
Then, install the specific version of Ruby that you need through RVM, where
ruby_version can be typed as
ruby-2.4.0, for instance, or just
$ rvm install ruby_version
After installation, we can list the obtainable ruby versions we have installed by entering the following command:
$ rvm list
We can switch between the ruby versions by entering this command:
$rvm use ruby_version
Since Rails is a gem, we can also install various versions of Rails by using the
$ gem search '^rails$' --all
In addition to that, we can install our required version of Rails. Note that
rails_version will only refer to the version number.
$ gem install rails -v rails_version
We can use different rails versions with each Ruby by creating gemsets and then installing Rails within those using the normal
To create a gemset we will use:
$rvm gemset create gemset_name
The gemsets allow us to have self-contained environments for gems as well as have multiple environments for each version of Ruby that we install.