Redmine guide - andreydiveev/wiki GitHub Wiki

Установка redmine для debian 7.8

Установка пакетов

Пакеты для системы

apt-get install gcc build-essential zlib1g zlib1g-dev zlibc libzlib-ruby libssl-dev libyaml-dev libcurl4-openssl-dev apache2-mpm-prefork apache2-prefork-dev libapr1-dev libxslt-dev checkinstall git mc

Качаем и ставим ruby - используем checkinstall чтобы вставал в качестве пакета

cd ~
wget ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p547.tar.gz
tar xvfz ruby-1.9.3-p547.tar.gz
cd ruby-1.9.3-p547
./configure --enable-pthread --prefix=/usr/local
make && checkinstall --type=debian --install=yes --fstrans=no --pakdir='~'

checkinstall спрашивает шаги - прожимаем enter по всем пунктам (по дефолту)

чекаем версию ruby

root@debian:~/ruby-1.9.3-p547# ruby -v
ruby 1.9.3p547 (2014-05-14 revision 45962) [x86_64-linux]

ставим поддержку ssl

cd ext/openssl/
ruby extconf.rb
make && checkinstall --type=debian --install=yes --fstrans=no --pakdir='~'

чекаем gem

root@debian:~/ruby-1.9.3-p547# gem -v
1.8.23.2

Ставим гемы

gem install rdoc
gem install rails --no-ri --no-rdoc

Ставим passenger

gem install passenger
passenger-install-apache2-module

(жмём еnter -выбираем ruby)

по окончанию обычно выдаёт сообщение

Almost there!

Please edit your Apache configuration file, and add these lines:

   LoadModule passenger_module /usr/local/lib/ruby/gems/1.9.1/gems/passenger-5.0.16/buildout/apache2/mod_passenger.so
   
     PassengerRoot /usr/local/lib/ruby/gems/1.9.1/gems/passenger-5.0.16
     PassengerDefaultRuby /usr/local/bin/ruby
   

ориентируемся на них (важна версия) - две части вывода кладём в разные файлы

кладём в /etc/apache2/mods-available/passenger.load

LoadModule passenger_module /usr/local/lib/ruby/gems/1.9.1/gems/passenger-5.0.16/buildout/apache2/mod_passenger.so

а в /etc/apache2/mods-available/passenger.conf вторую часть плюс добавляем строку "PassengerDefaultUser www-data"

     PassengerRoot /usr/local/lib/ruby/gems/1.9.1/gems/passenger-5.0.16
     PassengerDefaultRuby /usr/local/bin/ruby
     PassengerDefaultUser www-data
   

включаем модуль

a2enmod passenger
service apache2 restart

качаем нужный redmine на http://www.redmine.org/projects/redmine/wiki/Download я взял свежий http://www.redmine.org/releases/redmine-3.1.0.tar.gz

распаковываем

cd ~
wget http://www.redmine.org/releases/redmine-3.1.0.tar.gz
mkdir /opt/
tar -xvf redmine-3.1.0.tar.gz -C /opt/
mv /opt/redmine-* /opt/redmine

ставим ещё пакеты + сам redmine

gem install bundler mysql2
apt-get install libmagickwand-dev libmysqlclient-dev
cd /opt/redmine
bundle install --without postgresql

ставим mysql-server при установке задаём пароль root для mysql

apt-get install mysql-server

создаём базу

# mysql -u root -p

create database redmine character set utf8;
create user 'redmine'@'localhost' identified by 'password';
grant all privileges on redmine.* to 'redmine'@'localhost';
flush privileges;\q

Настраиваем connection

cp /opt/redmine/config/database.yml.example /opt/redmine/config/database.yml
mcedit /opt/redmine/config/database.yml

!!!крайне важны отступы - два пробела

production:
  adapter: mysql2
  database: redmine
  host: localhost
  username: redmine
  password: password
  encoding: utf8

делаем токен

rake generate_secret_token

создаём таблицы - не забываем передавать окружение в переменной

RAILS_ENV=production rake db:migrate

необходимые каталоги с правами

cd /opt/redmine
mkdir tmp tmp/pdf public/plugin_assets tmp/cache
chown -R www-data:www-data files log tmp public/plugin_assets
chmod -R 775 files log tmp public/plugin_assets

сервер уже можно потестировать для Redmine 2.x.x

ruby script/rails server webrick -e production -b 0.0.0.0

для Redmine 3.x.x

bundle exec rails server webrick -e production -b 0.0.0.0

заходим на сервер http://address:3000

Создание домена

создаём файл

mcedit /etc/apache2/sites-available/redmine.conf
 ServerName redmine.testdomain.ru
 DocumentRoot /opt/redmine/public

  RailsEnv production
  RackBaseURI /
  Options -MultiViews


включаем шаблон

a2ensite redmine.conf
service apache2 restart

Настройка почты

Для работы почты устанавливаем postfix и bsd-mailx (замена стандартному sendmail)

apt-get install postfix bsd-mailx

при установке выбрать "интернет-сайт" почтовое имя redmine.testdomain.ru

закрываем 25 порт снаружи

postconf -e "inet_interfaces = loopback-only"
service postfix reload

копируем конфиг

cp /opt/redmine/config/configuration.yml.example /opt/redmine/config/configuration.yml

Добавляем в файл configuration.yml содержимое ниже после директивы default:

mcedit /opt/redmine/config/configuration.yml

тут главное не нарушать отступы и не ставить табы - отступ каждой подсекции строго два пробела - иначе можно потерять несколько часов на дебаге ))

должно получится

default:
  email_delivery:
    delivery_method: :smtp
    smtp_settings:
      address: localhost
      port: 25
      domain: redmine.testdomain.ru
      authentication: :none
      enable_starttls_auto: false
      openssl_verify_mode: 'none'

Рестарт apache

service apache2 restart

Остальные настройки почты через админку(адрес отправки, шаблон письма). Там же можно отправить тестовое письмо - без наличия обратной зоны большая вероятность что письмо будет попадать в "Cпам"

Как ставить плагины

на примере https://bitbucket.org/bugzinga/redcase/downloads/redcase-1.0.zip заливаем плагин в /opt/redmine/plugins

cd /opt/redmine/plugins
wget https://bitbucket.org/bugzinga/redcase/downloads/redcase-1.0.zip
unzip redcase-1.0.zip
bundle install 

для redmine 3.x.x

rake redmine:plugins RAILS_ENV=production

для redmine 2.x.x

bundle exec rake redmine:plugins NAME=redсase RAILS_ENV=production

Установка тем

Самая годная тема

cd /opt/redmine/public/themes/
git clone git://github.com/pixel-cookers/redmine-theme.git 
service apache2 restart

Дальше тему выбираем в админке Для тем и плагинов обязательно смотреть совместимость версий (2.x.x 3.x.x)

⚠️ **GitHub.com Fallback** ⚠️