Install Ruby and Bundler

Ruby 2.6 or newer is required.

Option 1: Install from packages

Note:

Future versions of Arvados may require a newer version of Ruby than is packaged with your OS. Using OS packages simplifies initial install, but may complicate upgrades that rely on a newer Ruby. If this is a concern, we recommend using RVM.

Alma/CentOS/Red Hat/Rocky

The Ruby version shipped with version 7 of these distributions is too old. Use RVM to install a newer version of Ruby (we recommend installing version 2.7 or newer).

Ruby 2.7 is available in a module with version 8 of these distributions. You can install it by running:

# dnf module enable ruby:2.7
# dnf install --enablerepo=devel ruby ruby-devel

Debian and Ubuntu

Debian 10 (buster) and Ubuntu 18.04 (bionic) ship with Ruby 2.5, which is too old for Arvados. Use RVM to install a newer version of Ruby (we recommend installing version 2.7 or newer).

Debian 11 (bullseye) and Ubuntu 20.04 (focal) and later ship with Ruby 2.7 or newer, which is sufficient for Arvados.

# apt-get --no-install-recommends install ruby ruby-dev

Option 2: Install with RVM

Install gpg and curl

Alma/CentOS/Red Hat/Rocky

dnf install gpg curl which

Debian and Ubuntu

apt-get --no-install-recommends install gpg curl

Install RVM, Ruby and Bundler

# gpg --keyserver pgp.mit.edu --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
\curl -sSL https://get.rvm.io | bash -s stable --ruby=2.7

This command installs the latest Ruby 2.7.x release, as well as the gem and bundle commands.

To use Ruby installed from RVM, load it in an open shell like this:

source /usr/local/rvm/scripts/rvm

Alternately you can use rvm-exec (the first parameter is the ruby version to use, or “default”), for example:

rvm-exec default ruby -v

Option 3: Install from source

Install prerequisites for Debian 10, Ubuntu 18.04 and Ubuntu 20.04:

sudo apt-get install \
    bison build-essential gettext libcurl4 \
    libcurl4-openssl-dev libpcre3-dev libreadline-dev \
    libssl-dev libxslt1.1 zlib1g-dev

Install prerequisites for Alma/CentOS/Red Hat/Rocky:

sudo dnf install \
    libyaml-devel glibc-headers autoconf gcc-c++ glibc-devel \
    patch readline-devel zlib-devel libffi-devel openssl-devel \
    make automake libtool bison sqlite-devel tar

Build and install Ruby:

mkdir -p ~/src
cd ~/src
curl -f https://cache.ruby-lang.org/pub/ruby/2.7/ruby-2.7.5.tar.gz | tar xz
cd ruby-2.7.5
./configure --disable-install-rdoc
make
sudo make install

# Make sure the post install script can find the gem and ruby executables
sudo ln -s /usr/local/bin/gem /usr/bin/gem
sudo ln -s /usr/local/bin/ruby /usr/bin/ruby
# Install bundler
sudo -i gem install bundler

Previous: Install PostgreSQL 9.4+ Next: Install Nginx

The content of this documentation is licensed under the Creative Commons Attribution-Share Alike 3.0 United States licence.
Code samples in this documentation are licensed under the Apache License, Version 2.0.