Ruby on Rails

Хостинг Ruby on Rails от Hostpro.ua - первые впечатления

revised 8 September 2009

Коротко, списком, основные моменты: cPanel. Как-то врет она про наличествующие в системе гемы, по крайней мере их список никак не совпадаеет с ls /usr/local/ Mongrel.

Коротко, основные технические моменты о переносе сайта с VPS от Slicehost на shared-хостинг от Hostpro.
Чтоб никого не путать, речь идет о хостинге ruby on rails на пакете Кластер от Hostpro.ua.

  • Саппорт работает оперативно.
  • SSH-доступ имеется. Что бы я без него делал, уже не знаю. Ибо надо и rake, и script/console, и все такое. А еще надо rsync, но об этом позже.
  • Наличествует SVN, но отсутствует git. Вывод – просто так выливать код из git-репозитария не получится. К счастью, Capistrano умеет справляться с такой ситуацией, ниже расскажу, как.
  • cPanel. Как-то врет она про наличествующие в системе гемы, по крайней мере их список никак не совпадает с ls /usr/lib/ruby/gems/1.8
  • К несчастью, структура каталогов, создаваемая Capistrano, для cPanel не подходит – при указании пути к приложению она следует за симлинкой с /current и берет путь к конкретному каталогу релиза в /releases. Само собой, при следующем деплое этот путь не меняется. К счастью, деплоить можно и без хитроумных Capistrano – еще ниже, расскажу, как.
  • Mongrel. Пока не знаю, хорошо это или плохо в плане производительности, но зато налицо конфликт назначения портов: порт 12001 занят чужим монгрелом, что видно по списку процессов, тем не менее cPanel все равно пытается отдать его мне. Еще один камень в огород cPanel, видимо. К счастью, второе созданное приложение становится на 12002 и монгрел поднимается.
  • Видимо, создается один поток монгрела на приложение. Нууу… тут сам знаешь.
  • Саппорт сообщил, что «гарантируется работа только приложений, созданных с помощью cPanel, ибо только тогда прописываются соответствующие конфиги.» Разницы между приложением, созданным cPanelью, и созданным вручную на локальной машине, я не нашел. Ну да ладно, наверное, речь о настройках монгрела.
  • Папка ~/.gem/ruby/1.8/gems загадочным образом пуста (видимо, что-то не так с правами). Даже после установки гемов через gem install. К счастью, установить гемы можно с помощью саппорта (cPanel опять-таки утверждает, что гемы стоят, хотя это не так.)

Обновление 8 сентября

Сайт перенесен и работает. Спасибо саппорту, проблемы решались довольно быстро.

Из проблем, кроме всего вышеперечисленного, наблюдались кривые сертификаты smtpd, которые рельсы упорно хотели использовать, и из-за которых они не отправляли почту. Решилось это отключением поддержки STARTTLS в smtpd – не идеальное решение, но вполне рабочее.