This article covers a version of CentOS that is no longer supported. If you are currently operating a server running CentOS 6, we highly recommend upgrading or migrating to a supported version of CentOS.
Reason: CentOS 6 reached end of life (EOL) on November 30th, 2020 and no longer receives security patches or updates. For this reason, this guide is no longer maintained.
See Instead:
This guide might still be useful as a reference, but may not work on other CentOS releases. If available, we strongly recommend using a guide written for the version of CentOS you are using.
The following DigitalOcean tutorial may be of immediate interest, as it outlines installing Ruby on Rails (albeit, with rbenv) on a CentOS 7 server:
Ruby on Rails is an application stack that provides developers with a framework to quickly create a variety of web applications. Ruby on Rails does take a little while to install on a virtual private server, but luckily there are a lot of helpful tools to make this process as easy as possible.
You can run this tutorial on your droplet as a user with sudo privileges. You can check out how to set that up here, in steps 3 and 4: CentOS Server Setup
Before we do anything else, we should run a quick update to make sure that all of the packages we download are up to date:
sudo yum update
Once that's done, we can start installing RVM, Ruby Version Manager. This is a great program that lets you use several versions of Ruby on one VPS; however, in this case, we will just use it to install the latest version of Ruby on the droplet.
If you do not have curl on your system, you can start by installing it:
sudo yum install curl
To install RVM, open terminal and type in this command:
curl -L get.rvm.io | bash -s stable
After it is done installing, load RVM.
# If you ran the installer as root, run: source /usr/local/rvm/rvm.sh # If you installed it through a user with access to sudo: source ~/.rvm/rvm.sh
In order to work, RVM has some of its own dependancies that need to be installed. You can see what these are:
rvm requirements
In the text that RVM shows you, look for this paragraph.
Additional Dependencies: # For Ruby / Ruby HEAD (MRI, Rubinius, & REE), install the following: ruby: yum install -y gcc-c++ patch readline readline-devel zlib zlib-devel libyaml-devel libffi-devel openssl-devel make bzip2 autoconf automake libtool bison iconv-devel ## NOTE: For centos >= 5.4 iconv-devel is provided by glibc
Go ahead and download the recommended dependancies, being careful not to use sudo. Instead, we should use rvmsudo:
rvmsudo yum install -y gcc-c++ patch readline readline-devel zlib zlib-devel libyaml-devel libffi-devel openssl-devel make bzip2 autoconf automake libtool bison iconv-devel
Once you are using RVM, installing Ruby is easy.
rvm install 1.9.3
Ruby is now installed. However, since we accessed it through a program that has a variety of Ruby versions, we need to tell the system to use 1.9.3 by default.
rvm use 1.9.3 --default
The next step makes sure that we have all the required components of Ruby on Rails. We can continue to use RVM to install gems; type this line into terminal.
rvm rubygems current
Once everything is set up, it is time to install Rails. To start, open terminal and type in:
gem install rails
This process may take a while, be patient with it. Once it finishes you will have Ruby on Rails installed on your droplet.
Once you have installed Ruby on Rails on your VPS, you can proceed to Create a SSL Certificate for your site or Install an FTP server
Thanks for learning with the DigitalOcean Community. Check out our offerings for compute, storage, networking, and managed databases.
This textbox defaults to using Markdown to format your answer.
You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!
this also works to install the latest…
i installed ruby 2.1.5 rvm install 2.1.5
Nice article! You did a lot of work for us. One point: The ‘rvmsudo yum install …’ command seems to be unnecessary at this point. ‘rvm requirements’ installs these for you.
@mr_spy_incognito the correct command should have been in the output when it installed
…<pre><code> Installing RVM to /home/user/.rvm/ Adding rvm PATH line to /home/user/.profile /home/user/.bashrc /home/user/.zshrc. Adding rvm loading line to /home/user/.bash_profile /home/user/.zlogin. Installation of RVM in /home/user/.rvm/ is almost complete:
<b>source /home/user/.rvm/scripts/rvm</b>
in all your open shell windows, in rare cases you need to reopen all shell windows. </code></pre> …@mr_spy_incognito: <code>curl -L get.rvm.io | bash -s stable</code> Did you run that as
jecko
?I use non-root user to try this. But I stuck on this step:
/home/jecko/.rvm/rvm.sh: No such file or directory
Any ideas?
is this the better way or gems installation is the better way, and why should we use rvmsudo?
not sleeping - eyeless kitten :)
thank you DO, before meet with you i’ve been sleeping kitten.
“rvm use 1.9.3 --default” gives an error for me, but “rvm --default use 1.9.3” resolves it
Kamal; I believe this tutorial should be re-looked over and rewritten as it can be very confusing to newbies trying to install Ruby on Rails (like myself). Case in point, please follow this link. http://rvm.io/support/troubleshooting
Under the header titled, “Multi-User Installs - Using the sudo command”, they stress the importance of not running RVM as root and why. The tutorial states it can be done using sudo, but really should stress why so others don’t make the mistake of not doing so. That is my belief to make the tutorial super effective.