how to install #Redmine on Centos 7 #Linux (DMS)
Оглавление:
- Предпосылки
- Создание базы данных MySQL
- Установка Passenger и Nginx
- Создание нового пользователя системы
- Установка Ruby
- Установка Redmine на CentOS
- 1. Загрузка Redmine
- 2. Настройка базы данных Redmine
- 3. Установка зависимостей Ruby
- 4. Генерация ключей и миграция базы данных
- Настройка Nginx
- Настройте Nginx с помощью SSL
- Доступ к Redmine
- Вывод
Redmine - один из самых популярных программных инструментов для управления проектами с открытым исходным кодом. Это кроссплатформенная и кросс-база данных, построенная на основе инфраструктуры Ruby on Rails.
Redmine включает в себя поддержку нескольких проектов, вики, системы отслеживания проблем, форумов, календарей, уведомлений по электронной почте и многое другое.
В этом руководстве мы рассмотрим шаги, необходимые для установки и настройки последней версии Redmine на сервере CentOS 7, используя MariaDB в качестве сервера базы данных и Passenger + Nginx в качестве сервера приложений Ruby.
Предпосылки
Убедитесь, что вы выполнили следующие предварительные условия, прежде чем продолжить этот урок:
- Доменное имя, указывающее на публичный IP вашего сервера. В этом уроке мы будем использовать
example.comЗарегистрирован как пользователь с привилегиями sudo.
Установите пакеты, необходимые для сборки Redmine и Ruby из исходного кода:
sudo yum install curl gpg gcc gcc-c++ make patch autoconf automake bison libffi-devel libtool
sudo yum install readline-devel sqlite-devel zlib-devel openssl-develh readline glibc-headers glibc-devel
sudo yum install mariadb-devel zlib libyaml-devel bzip2 iconv-devel ImageMagick ImageMagick-devel
Создание базы данных MySQL
Redmine поддерживает MySQL / MariaDB, Microsoft SQL Server, SQLite 3 и PostgreSQL. В этом уроке мы будем использовать MariaDB в качестве базы данных.
Если на вашем сервере CentOS не установлена MariaDB или MySQL, вы можете установить их, следуя этим инструкциям.
Войдите в оболочку MySQL, введя следующую команду:
sudo mysql
В оболочке MySQL выполните следующую инструкцию SQL, чтобы создать новую базу данных:
CREATE DATABASE redmine CHARACTER SET utf8;
Затем создайте учетную запись пользователя MySQL и предоставьте доступ к базе данных:
GRANT ALL ON redmine.* TO 'redmine'@'localhost' IDENTIFIED BY 'change-with-strong-password';
Убедитесь, что вы изменили
change-with-strong-password
с помощью надежного пароля.
После завершения выйдите из оболочки mysql, набрав:
Установка Passenger и Nginx
Passenger - это быстрый и легкий сервер веб-приложений для Ruby, Node.js и Python, который можно интегрировать с Apache и Nginx. Мы установим Passenger как модуль Nginx.
Установите репозиторий EPEL и необходимые пакеты:
sudo yum install epel-release yum-utils pygpgme
sudo yum-config-manager --enable epel
Включите репозиторий Phusionpassenger:
sudo yum-config-manager --add-repo
После того, как хранилище будет включено, обновите список пакетов и установите Nginx и Passenger с помощью:
sudo yum install nginx passenger passenger-devel
Создание нового пользователя системы
Создайте нового пользователя и группу, которая будет запускать экземпляр Redmine, для простоты мы
redmine
пользователя
redmine
:
sudo useradd -m -U -r -d /opt/redmine redmine
Добавьте пользователя
nginx
в новую группу пользователей и измените разрешения для каталога
/opt/redmine
чтобы Nginx мог получить к нему доступ:
sudo usermod -a -G redmine nginx
sudo chmod 750 /opt/redmine
Установка Ruby
Версия Ruby в репозиториях CentOS довольно устарела и не поддерживается Redmine. Мы установим Ruby с помощью RVM.
Переключитесь на пользователя
redmine
, набрав:
sudo su - redmine
Импортируйте ключи GPG и установите RVM:
gpg --keyserver hkp://pool.sks-keyservers.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
curl -sSL https://get.rvm.io | bash -s stable
curl -sSL https://get.rvm.io | bash -s stable
Чтобы начать использовать RVM-источник, файл
rvm
:
source /opt/redmine/.rvm/scripts/rvm
Теперь мы можем установить Ruby, запустив:
rvm install 2.5
rvm --default use 2.5
Если вы хотите установить Ruby через Rbenv, проверьте это руководство.
Установка Redmine на CentOS
На момент написания этой статьи последняя стабильная версия Redmine - это версия 4.0.1.
Прежде чем перейти к следующим шагам, вам следует проверить страницу загрузки Redmine, чтобы узнать, доступна ли более новая версия.
Убедитесь, что вы выполняете следующие шаги как пользователь
redmine
.
1. Загрузка Redmine
Загрузите архив Redmine с помощью следующей команды curl:
curl -L http://www.redmine.org/releases/redmine-4.0.1.tar.gz -o redmine.tar.gz
После завершения загрузки распакуйте архив:
2. Настройка базы данных Redmine
Скопируйте пример файла конфигурации базы данных Redmine:
cp /opt/redmine/redmine-4.0.1/config/database.yml.example /opt/redmine/redmine-4.0.1/config/database.yml
Откройте файл в текстовом редакторе:
nano /opt/redmine/redmine-4.0.1/config/database.yml
Найдите
production
раздел и введите базу данных MySQL и информацию о пользователе, которую мы создали ранее:
production: adapter: mysql2 database: redmine host: localhost username: redmine password: "change-with-strong-password" encoding: utf8
После этого сохраните файл и выйдите из редактора.
3. Установка зависимостей Ruby
Перейдите в
redmine-4.0.1
и установите упаковщик и другие зависимости Ruby:
cd ~/redmine-4.0.1
gem install bundler --no-rdoc --no-ri
bundle install --without development test postgresql sqlite
gem install bundler --no-rdoc --no-ri
bundle install --without development test postgresql sqlite
4. Генерация ключей и миграция базы данных
Выполните следующую команду, чтобы сгенерировать ключи и перенести базу данных:
bundle exec rake generate_secret_token
RAILS_ENV=production bundle exec rake db:migrate
Настройка Nginx
Вернитесь к своему пользователю sudo:
exit
Откройте текстовый редактор и создайте следующий файл блока сервера Nginx:
sudo nano /etc/nginx/conf.d/example.com.conf
/etc/nginx/conf.d/example.com.conf
passenger_root /usr/share/ruby/vendor_ruby/phusion_passenger/locations.ini; passenger_ruby /opt/redmine/.rvm/gems/default/wrappers/ruby; passenger_instance_registry_dir /var/run/passenger-instreg; server { listen 80; server_name example.com www.example.com; root /opt/redmine/redmine-4.0.1/public; # log files access_log /var/log/nginx/example.com.access.log; error_log /var/log/nginx/example.com.error.log; passenger_enabled on; passenger_min_instances 1; client_max_body_size 10m; }
Не забудьте заменить example.com вашим доменом Redmine.
Перед перезапуском службы Nginx выполните тест, чтобы убедиться в отсутствии синтаксических ошибок:
sudo nginx -t
Если ошибок нет, результат должен выглядеть следующим образом:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
Наконец, перезапустите сервис Nginx, набрав:
Настройте Nginx с помощью SSL
После создания сертификата отредактируйте конфигурацию домена Nginx следующим образом:
sudo nano /etc/nginx/conf.d/example.com.conf
/etc/nginx/conf.d/example.com
passenger_root /usr/share/ruby/vendor_ruby/phusion_passenger/locations.ini; passenger_ruby /opt/redmine/.rvm/gems/default/wrappers/ruby; passenger_instance_registry_dir /var/run/passenger-instreg; # Redirect HTTP -> HTTPS server { listen 80; server_name www.example.com example.com; include snippets/letsencrypt.conf; return 301 https://example.com$request_uri; } # Redirect WWW -> NON WWW server { listen 443 ssl http2; server_name www.example.com; ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; include snippets/ssl.conf; return 301 https://example.com$request_uri; } server { listen 443 ssl http2; server_name example.com; root /opt/redmine/redmine-4.0.1/public; # SSL parameters ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; include snippets/ssl.conf; include snippets/letsencrypt.conf; # log files access_log /var/log/nginx/example.com.access.log; error_log /var/log/nginx/example.com.error.log; passenger_enabled on; passenger_min_instances 1; client_max_body_size 10m; }
Не забудьте заменить example.com доменом Redmine и указать правильный путь к файлам SSL-сертификатов. Все HTTP-запросы будут перенаправлены на
Доступ к Redmine
Откройте браузер, введите домен и, если установка прошла успешно, появится экран, подобный следующему:


После изменения пароля вы будете перенаправлены на страницу учетной записи пользователя.
Вывод
Вы успешно установили Redmine в вашей системе CentOS. Теперь вы должны проверить документацию Redmine и узнать больше о том, как настроить и использовать Redmine.
Centos Redmine Рубин Mysql Мариадб NginxКак установить и настроить сервер NFS на Centos 8
В этом руководстве вы пройдете шаги, необходимые для настройки сервера NFSv4 в CentOS 8. Мы также покажем вам, как смонтировать файловую систему NFS на клиенте.
Как установить и настроить Redmine на Debian 9
Redmine - это бесплатное приложение с открытым исходным кодом для управления проектами и отслеживания проблем. В этом руководстве мы покажем, как установить и настроить последнюю версию Redmine на сервере Debian 9, используя MySQL в качестве сервера базы данных и Passenger + Nginx в качестве сервера приложений Ruby.
Как установить и настроить Redmine на Ubuntu 18.04
Redmine - один из самых популярных программных инструментов для управления проектами с открытым исходным кодом. В этом руководстве рассказывается, как установить и настроить последнюю версию Redmine на сервере Ubuntu 18.04.







