Устанавливаем Ruby с RVM

Ruby Version Manager — скрипт для управления версиями Ruby.

Чем же он лучше стандартного пакета в репозитории вашего Линукса?

  • Возможность держать последнюю, стабильную, одинаковую версию Ruby и на сервере и на машинах где пишется код.
  • В случае если на сервере работает несколько приложений, можно переводить их на новый Ruby постепенно. Или не переводить — каждое приложение может работать на своей версии Руби.
  • Можно протестировать новую версию и переключиться обратно парой команд.

Установка #

Чтобы установить скрипт понадобятся curl, git и bash:

sudo pacman -S --noconfirm curl git
curl -L get.rvm.io | bash -s stable

Смотрите какие пакеты нужны, чтобы собрать Ruby:

rvm requirements

И устанавливайте их:

sudo pacman -S --noconfirm gcc patch zlib readline libxml2 libxslt autoconf automake diffutils make libtool bison subversion

Список версий Руби:

rvm list known

Устанавливайте последнюю доступную версию:

rvm install 2.0.0

Используем эту версию по умолчанию:

rvm use 2.0.0 --default

Обновить rvm можно так:

rvm get stable --auto

Настройка #

Огромный прирост в скорости установки гемов даст отключение встроенной документации:

echo "gem: --no-ri --no-rdoc" >> ~/.gemrc

И это пожалуй всё.

RVM + Crontab #

Небольшой нюанс в том, что cron запускается в минимальном окружении, поэтому даже если мы будем запускать его от пользователя, из под которого установили rvm, ничего не получится.

Чтобы запускать скрипты по крону нужно использовать обвязку:

crontab -e

Запускаем по расписанию обёртку:

00 */12  * * * /path/to/script/script.sh

Которая выглядит так:

#!/usr/bin/env bash

# load rvm ruby

# source ~/.rvm/environments/default
source /usr/local/rvm/environments/default 

cd "$( dirname "$0" )"

bundle install

ruby script.rb

Соответственно можно посмотреть что у вас в папке ~/.rvm/environments:

ls -lA ~/.rvm/environments

И указать конкретную версию:

source ~/.rvm/environments/ruby-1.9.3-p194

Комментарии

Minecraft

Ксев, форум не работает. Но вот народ изъявляет желание снова побегать по нашему уютному серверу майнкрафта.

ksevelyar

Форум на Рельсах я ещё не написал :3 Сервер MC я собираю, как он будет готов напишу в блог.

Добавить комментарий