В этой статье мы покажем вам, как установить Redmine на CentOS. Redmine – это бесплатное приложение для отслеживания проблем с открытым исходным кодом и веб-приложение для управления проектами. Redmine построен на Ruby, и фреймворке Rails, он является кросс-платформенной и межбазовой. Это руководство должно работать на других системах Linux VPS так же хорошо, но было испытано и написано для CentOS 7 VPS.
yum update yum install curl zlib-devel curl-devel openssl-devel httpd-devel apr-devel apr-util-devel mysql-devel ftp wget ImageMagick-devel gcc-c++ patch readline readline-devel zlib libyaml-devel libffi-devel make bzip2 autoconf automake libtool bison subversion sqlite-devel
Для установки пакета MariaDB, выполните следующую команду:
yum install mariadb-server
Когда установка будет завершена, запустите следующую команду, чтобы защитить установку:
mysql_secure_installation
Далее, нам необходимо создать базу данных для нашей установки Redmine:
mysql -uroot -p MariaDB [(none)]> CREATE DATABASE redmine CHARACTER SET utf8; MariaDB [(none)]> GRANT ALL PRIVILEGES ON redmine.* TO 'redmine'@'localhost' IDENTIFIED BY 'redmine_passwd'; MariaDB [(none)]> FLUSH PRIVILEGES; MariaDB [(none)]> \q
Создание нового пользователя системы для Redmine.
sudo adduser --home /opt/redmine --shell /bin/bash --gecos 'Redmine application' redmine sudo install -d -m 755 -o redmine -g redmine /opt/redmine
Переход к новому пользователю Redmine:
sudo su - redmine
curl -sSL https://rvm.io/mpapis.asc | gpg --import - curl -sSL https://get.rvm.io | bash -s stable --ruby
Для того, чтобы начать использовать RVM, выполните следующие команды:
source ~/.rvm/scripts/rvm rvm --default use ruby
Для того, чтобы проверить, что все сделано правильно, используйте команду ruby --version
.
Вывод должен быть похож на следующий:
ruby --version ruby 2.4.1p111 (2017-03-22 revision 58053) [x86_64-linux]
Следующие команды извлекают исходный код Redmine в каталог $HOME/redmine
и создает необходимые каталоги.
cd && svn co http://svn.redmine.org/redmine/branches/3.4-stable redmine
mkdir -p ./redmine/tmp/pids ./redmine/public/plugin_assets
Настройка параметров базы данных:
cp ./redmine/config/configuration.yml.example ./redmine/config/configuration.yml cp ./redmine/config/database.yml.example ./redmine/config/database.yml
Откройте файл database.yml
и обновите имя пользователя/пароль:
vim nsno
production: adapter: mysql2 database: redmine host: localhost username: redmine password: "redmine_passwd" encoding: utf8
cd /opt/redmine/redmine echo "gem 'puma'" >> Gemfile.local echo "gem: --no-ri --no-rdoc" >> ~/.gemrc gem install bundler bundle install --without development test postgresql sqlite
rake generate_secret_token RAILS_ENV=production rake db:migrate RAILS_ENV=production REDMINE_LANG=en rake redmine:load_default_data
Создайте новый файл конфигурации следующим образом:
vim ./redmine/config/puma.rb
#!/usr/bin/env puma application_path = '/opt/redmine/redmine' directory application_path environment 'production' daemonize true pidfile "#{application_path}/tmp/pids/puma.pid" state_path "#{application_path}/tmp/pids/puma.state" stdout_redirect "#{application_path}/log/puma.stdout.log", "#{application_path}/log/puma.stderr.log" bind "'tcp://0.0.0.0:9000"
Запустите сервера с Puma:
cd /opt/redmine/redmine/ && bundle exec puma --config config/puma.rb
Вывод должен быть похож на следующий:
Puma starting in single mode... * Version 3.11.2 (ruby 2.4.1-p111), codename: Love Song * Min threads: 0, max threads: 16 * Environment: production * Daemonizing...
Наконец вы можете запустить свой браузер и получить доступ к новой установке Redmine по адресу: http://IP_ADDRESS:9000
Вот и все. Вы успешно установили Redmine на своем CentOS VPS. Для получения дополнительной информации о Redmine, пожалуйста, обратитесь на сайт Redmine.
Добрый день.
cd /opt/redmine/redmine/ && bundle exec puma –config config/puma.rb работает, только если стартует под рутом. Под redmine стартует нормально но в браузере тишина
Не работает.
Что именно?
mysql_secure_installation не выполняется потому, что после
yum install mariadb-server
в каталоге /var/lib/mysql лежит какое-то файло и владелек у папки mysql:root
нужно сначала
# chown -R mysql:mysql /usr/local/var/mysql
# rm -rf /var/lib/mysql/*
# systemctl start mariadb.service
а уже только потом
mysql_secure_installation
У нас проблем с разрешениями не было
Пункт 4 нужно под рутом делать или под каким-то судоером. Отметьте это в статьи, иначе не получается ни хрена после sudo su – redmine
с 2018го года, видимо, что-то могло и поменяться 🙂
я вот сейчас по этой статье пытаюсь поставить и рассказывают про найденные грабли
bundle exec puma –config config/puma.rb
….
холера… надо было сначала дочитать статью до конца… чорт!
Спасибо Вам за это “как надо”, очень просто.
2 улучшения:
– В пункте 3, команда ” sudo adduser-home /opt /redmine –shell/bin/bash –gecos ‘Redmine application’ redmine” reutrns ошибка, что –gecos неизвестная опция, должен использоваться – c.
– В пункте 8, в начале просто добавьте команду “cd /opt/redmine”
🙂
Вы правы, если команда –gecos неизвестна в вашей системе, вы можете использовать-c для указания полного имени пользователя.
И да, вам нужно убедиться, что вы находитесь в правильном каталоге ‘/opt/redmine’ перед запуском команды ‘vim ./redmine/config/puma.rb’.
Спасибо за статью !
А не подскажите как убрать порт: 9000 в URL, ( 80-й порт занят ).
Сейчас: http://redmine.ru:9000
Хотелось бы: http://redmine.ru или http://dev.redmine.ru ( без порта ) 🙂 🙂