Підготовка робочого простору
Вирішив не опускати всіх дрібниць, щоб потім хтось міг підняти собі Redmine
Почнемо з підготовки робочого простору, а саме з установки sudo, так як використовувати систему під користувачем root не є добрим вирішенням (хоча сам я так не робив)
apt-get install nano
Є кілька допоміжних пакетів, які ми встановимо в першу чергу. Установка Apache досить проста, якщо ви просто слідувати інструкціям і прийміть значення за замовчуванням.
sudo apt-get install apache2 libapache2-mod-passenger
Встановлення бази даних
# База данных MySql
apt-get install mysql-server mysql-client libmysqlclient-dev
Package configuration ┌────────────────────┤ Configuring mysql-server-5.5 ├─────────────────────┐ │ While not mandatory, it is highly recommended that you set a password │ │ for the MySQL administrative "root" user. │ │ │ │ If this field is left blank, the password will not be changed. │ │ │ │ New password for the MySQL "root" user: │ │ │ │ _______________________________________________________________________ │ │ │ │ <Ok> │ │ │ └─────────────────────────────────────────────────────────────────────────┘
┌────┤ Configuring mysql-server-5.5 ├──────────┐ │ │ │ Repeat password for the MySQL "root" user. │ │ │ │ │ │ ____________________________________________ │ │ │ │ │ │ │ └──────────────────────────────────────────────┘
При установці MySql може запросити пароль супер користувача. Придумайте і запишіть його. Тепер нам потрібно створити базу даних і користувача дня неї.
# Якщо вибрали MySql mysql -uroot -p CREATE DATABASE redmine CHARACTER SET utf8; CREATE USER 'redmine'@'localhost' IDENTIFIED BY 'password'; GRANT ALL PRIVILEGES ON redmine.* TO 'redmine'@'localhost'; exit
Установка самого Redmine
Нам будуть потрібні заголовки для компіляції. apt-get install libmagickcore-dev libmagickwand-dev imagemagick build-essential
Тепер ми готові завантажити свіжий redmine. На момент написання статті це 3.3.0. Завантажити і покладемо в робочу директорію.
cd / cd home/dima/ mkdir redmine cd redmine wget http://www.redmine.org/releases/redmine-3.3.0.tar.gz tar -zxvf ./redmine-3.3.0.tar.gz mv ./redmine-3.3.0 /var/www/redmine/
Redmine написаний на Ruby і вимагає його. Встановлюємо.
# Потягне за собою багато залежностей. apt-get install ruby ruby-dev rubygems libruby # Нам буде потрібно bundler це як apt-get тільки для ruby gem install bundler
Додамо thin.
nano /var/www/redmine/Gemfile #після додаємо gem "thin"
Встановимо всі необхідні для gem'и Redmine:
cd /var/www/redmine/ bundle install --without development test
Залишилось налаштувати
cp config/database.yml.example config/database.yml mv public/dispatch.fcgi.example public/dispatch.fcgi nano config/database.yml
Змінюємо виробництво приблизно до такого виду.
production: adapter: mysql2 database: redmine host: localhost username: redmine password: "password_Mysql_redmine_user" encoding: utf8
Створимо секретний ключ:
rake generate_secret_token
Помилок бути не повинно. Але якщо раптом він попросить mysql2 або інший гем для PostgreSQL, просто встановіть їх:
gem install mysql2 # після чого знову спробуйте згенерувати ключ rake generate_secret_token
Заповнення бази даних відбувається 2 командами. Після 2 попросять вибрати мову.
RAILS_ENV=production rake db:migrate RAILS_ENV=production rake redmine:load_default_data # якщо ви хочете зашифрувати власний пароль то виконайте: rake db:encrypt RAILS_ENV=production # я цього не робив
Налаштування Apache
Вам потрібно змінити два файли для апача. перший /etc/apache2/mods-available/passenger.conf
<Directory /var/www/html/redmine> RailsBaseURI /redmine PassengerResolveSymlinksInDocumentRoot on </Directory>
Вказуєм апачу звідки буде запуск нашого редмайну
<VirtualHost *:80>
ServerName redmine.pc-service.cv.ua
ServerAdmin Ця електронна адреса захищена від спам-ботів. Вам необхідно увімкнути JavaScript, щоб побачити її.
DocumentRoot /var/www/redmine/public/
ErrorLog /var/log/redmine_error_log
#If you are using mod_fcgid and are going to upload files larger than
#131072 bytes you should consider adding the following line
#that allows to upload files up to 20 mb
Options Indexes ExecCGI FollowSymLinks
Order allow,deny
Allow from all
AllowOverride all
</VirtualHost>
Створення і встановити власника на файл Gemfile.lock так щоб користувач Apache WWW-data мав повний доступ до нього:
$ sudo touch /usr/share/redmine/Gemfile.lock $ sudo chown www-data:www-data /usr/share/redmine/Gemfile.lock
Перезавантажуємо апач
$ sudo /etc/init.d/apache2 restart
Налаштування пошти
$ sudo apt-get install sendmail
Заходив в директорію редмайна /var/www/redmine/config/ та створюємо або змінюємо файл configuration.yml
# default configuration options for all environments default: email_delivery: delivery_method: :sendmail sendmail_settings: arguments: "-i"
Перевантажуємо сервіс $ sudo service apache2 restart