Установка RedMine на Ubuntu 10.10

В данной статье опубликован лог установки приложения RedMine на Ubuntu 10.10. В случае наличия нескольких ruby приложений добавлена краткая инструкция по установке mongrel.

Все запускаемые команды выполняются из под пользователя root.

apt-get install libmysql-ruby ruby rubygems ri ruby1.8-dev build-essential
rake

gem install rails mongrel mongrel_cluster daemons --include-dependencies

gem install rails -v=2.3.9

# gem list | egrep '(rail|mong|daem)'
daemons (1.1.0)
mongrel (1.1.5)
mongrel_cluster (1.0.5)
rails (3.0.3, 2.3.9)
railties (3.0.3)

ln -s /var/lib/gems/1.8/bin/mongrel_rails /usr/bin/mongrel_rails
ln -s /var/lib/gems/1.8/bin/rails /usr/bin/rails
ln -s /var/lib/gems/1.8/bin/mongrel_cluster_ctl
/usr/bin/mongrel_cluster_ctl

mkdir -p /opt/ror/redmine
svn co http://redmine.rubyforge.org/svn/branches/1.1-stable
/opt/ror/redmine

Создаем БД и пользователя в MySQL.

Пробуем (для поиска зависимостей)

ruby script/server -e production
Падает с ошибками:
Missing the i18n 0.4.2 gem. Please `gem install -v=0.4.2 i18n`
Missing the Rails 2.3.5 gem. Please `gem install -v=2.3.5 rails`
Поочередно ставим:
gem install -v=0.4.2 i18n
gem install -v=2.3.5 rails 
Пробно запускаем:
rake generate_session_store
ruby script/server -e production
Работает на порту 3000. Коннектимся, проверяем (admin/admin) Гасим через Ctrl-C Создаем конфиг для mongrel:
mongrel_rails cluster::configure -e production -p 8000 -N 3 -c
/opt/ror/redmine --user www-data --group www-data

Writing configuration file to config/mongrel_cluster.yml
Меняем права:
touch /opt/ror/redmine/log/production.log
chmod 0666 /opt/ror/redmine/log/production.log
Пробно запускаем:
mongrel_rails cluster::start
Работает на порту 8000/8001/8002. Подключаемся к данным портам к серверу из браузера по адресу http://<адрес сервера>:8000, проверяем что все работает. В случае наличия фаирвола, необходимо открыть порт на время проверки. Проблема: В случае наличия нескольких приложений может возникнуть ситуация когда они не могут работать одновременно (pid-ы и логи не будут раскидываться по каталогам приложений, а пишутся в последний, к примеру в redmine). Поднимаем mongrel_cluster:
mkdir /etc/mongrel_cluster
ln -s /opt/ror/redmine/config/mongrel_cluster.yml
/etc/mongrel_cluster/redmine.yml
ln -s /opt/ror/project/config/mongrel_cluster.yml
/etc/mongrel_cluster/project.yml

cp /var/lib/gems/1.8/gems/mongrel_cluster-1.0.5/resources/mongrel_cluster
/etc/init.d/mongrel_cluster
chmod +x /etc/init.d/mongrel_cluster
update-rc.d -f mongrel_cluster defaults
Меняем пользователя, из под которого работает mongrel. Исправляем в /etc/init.d/mongrel_cluster
USER=www-data
Использование скрипта запуска mongrel:
service mongrel_cluster
Usage: mongrel_cluster {start|stop|restart|status}

Контакты
Найти