Запуск Redmine в Debian 11.1 и Ubuntu Server 21.10

Краткая инструкция по установке и первоначальной настройке менеджера проектов Redmine в связке с веб-сервером Apache и СУБД MariaDB на ОС Debian GNU/Linux 11.1 и Ubuntu Server 21.10.

В первую очередь необходимо залогиниться с правами суперпользователя root. Если сервер разворачивается на Ubuntu Server, то вводим

# sudo -i

Устанавливаем консольный браузер Links для удобства

# apt install links

Затем СУБД MariaDB

# apt install mariadb-client mariadb-server

Далее запускаем первоначальную настройку MariaDB

# /usr/bin/mysql_secure_installation

Установим необходимые пакеты

# apt install build-essential ruby-dev libxslt1-dev libmariadb-dev libxml2-dev zlib1g-dev imagemagick libmagickwand-dev curl

а также Apache с модулем passenger

# apt install apache2 libapache2-mod-passenger

Теперь добавим пользователя redmine и определим его в группу www-data

# useradd -r -m -d /opt/redmine -s /usr/bin/bash redmine
# usermod -aG redmine www-data

После этого входим в консоль mysql

# mysql -u root -p

и создадим базу данных redmine_db с пользователем dbuser, который будет иметь на БД полные права:

CREATE DATABASE redmine_db;
GRANT ALL PRIVILEGES ON redmine_db.* to 'dbuser'@'localhost' IDENTIFIED BY '147258';
FLUSH PRIVILEGES;
EXIT;

147258 — это пароль пользователя БД dbuser.

Далее с помощью консольного браузера Links заходим на сайт Redmine и скачиваем архив последней версии в /tmp/

# links https://redmine.org/

Затем распаковываем этот архив в директорию /opt/redmine/ с правами пользователя redmine

# sudo -u redmine tar xzf /tmp/redmine-4.2.3.tar.gz -C /opt/redmine/ --strip-components=1

После этого входим под пользователем redmine

# su - redmine

копируем конфиги из примеров (example)

# cp /opt/redmine/config/configuration.yml.example /opt/redmine/config/configuration.yml
# cp /opt/redmine/config/database.yml.example /opt/redmine/config/database.yml
# cp /opt/redmine/public/dispatch.fcgi.example /opt/redmine/public/dispatch.fcgi

открываем файл конфигурации базы данных

nano /opt/redmine/config/database.yml

находим секцию production и приводим её к такому виду:

production:
  adapter: mysql2
  database: redmine_db
  host: localhost
  username: dbuser
  password: "147258"
  encoding: utf8

Далее выходим из пользователя redmine

# exit

Теперь переходим в домашний каталог пользователя redmine

# cd /opt/redmine/

и устанавливаем bundler

# gem install bundler

Затем снова входим под пользователем redmine

# su - redmine

устанавливаем зависимости

# bundle install --without development test --path vendor/bundle

генерируем сессионные токены

# bundle exec rake generate_secret_token

создаём структуру базы данных

# RAILS_ENV=production bundle exec rake db:migrate

вносим данные конфигурации по умолчанию

# RAILS_ENV=production REDMINE_LANG=ru bundle exec rake redmine:load_default_data

после выполнения этой команды должно появиться такое сообщение:

Default configuration data loaded

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

# chown -R redmine:redmine files log tmp public/plugin_assets
# chmod -R 755 /opt/redmine

запускаем тест сервера с использованием webrick

# bundle exec rails server webrick -e production

на другой машине в сети в адресной строке браузера вводим:

http://IP_адрес_сервера:3000

должна появиться домашняя страница Redmine

выходим из режима тестирования сочетанием клавиш Ctrl + C и из консоли пользователя redmine

# exit

Переходим к конфигурации Apache. Открываем файл:

# nano /etc/apache2/sites-available/000-default.conf

и в конце допишем такой блок:

Listen 3000
<VirtualHost *:3000>
        ServerName localhost
        RailsEnv production
        DocumentRoot /opt/redmine/public

        <Directory "/opt/redmine/public">
                Allow from all
                Require all granted
        </Directory>

        ErrorLog ${APACHE_LOG_DIR}/redmine_error.log
        CustomLog ${APACHE_LOG_DIR}/redmine_access.log combined
</VirtualHost>

Перезапустим Apache

# systemctl restart apache2

и проверим работу модуля passenger

# /usr/sbin/apache2ctl -M | grep passenger

в консоли должна появиться такая строчка:

passenger_module (shared)

После этого на другой машине в сети в адресной строке браузера вводим:

http://IP_адрес_сервера:3000

логинимся: admin / admin

и попадаем в консоль администратора Redmine, где необходимо настроить работу менеджера проектов из дашборда.

Источник: https://kifarunix.com/install-redmine-with-mariadb-on-debian-10-buster/

Запуск Redmine в Debian 11.1 и Ubuntu Server 21.10: 3 комментария

  1. Споткнулся на тесте сервера. Кстати, было бы круто, если бы вы добавили bb теги для кода)

    redmine@Debian:/opt/redmine$ bundle exec rails server webrick -e production
    Traceback (most recent call last):
    8: from bin/rails:4:in `’
    7: from bin/rails:4:in `require’
    6: from /opt/redmine/vendor/bundle/ruby/2.7.0/gems/railties-6.1.6/lib/rails/commands.rb:18:in `’
    5: from /opt/redmine/vendor/bundle/ruby/2.7.0/gems/railties-6.1.6/lib/rails/command.rb:48:in `invoke’
    4: from /opt/redmine/vendor/bundle/ruby/2.7.0/gems/railties-6.1.6/lib/rails/command/base.rb:69:in `perform’
    3: from /opt/redmine/vendor/bundle/ruby/2.7.0/gems/thor-1.2.1/lib/thor.rb:392:in `dispatch’
    2: from /opt/redmine/vendor/bundle/ruby/2.7.0/gems/thor-1.2.1/lib/thor/invocation.rb:127:in `invoke_command’
    1: from /opt/redmine/vendor/bundle/ruby/2.7.0/gems/thor-1.2.1/lib/thor/command.rb:27:in `run’
    /opt/redmine/vendor/bundle/ruby/2.7.0/gems/railties-6.1.6/lib/rails/commands/server/server_command.rb:130:in `perform’: wrong number of arguments (given 1, expected 0) (ArgumentError)
    9: from bin/rails:4:in `’
    8: from bin/rails:4:in `require’
    7: from /opt/redmine/vendor/bundle/ruby/2.7.0/gems/railties-6.1.6/lib/rails/commands.rb:18:in `’
    6: from /opt/redmine/vendor/bundle/ruby/2.7.0/gems/railties-6.1.6/lib/rails/command.rb:48:in `invoke’
    5: from /opt/redmine/vendor/bundle/ruby/2.7.0/gems/railties-6.1.6/lib/rails/command/base.rb:69:in `perform’
    4: from /opt/redmine/vendor/bundle/ruby/2.7.0/gems/thor-1.2.1/lib/thor.rb:392:in `dispatch’
    3: from /opt/redmine/vendor/bundle/ruby/2.7.0/gems/thor-1.2.1/lib/thor/invocation.rb:127:in `invoke_command’
    2: from /opt/redmine/vendor/bundle/ruby/2.7.0/gems/thor-1.2.1/lib/thor/command.rb:20:in `run’
    1: from /opt/redmine/vendor/bundle/ruby/2.7.0/gems/thor-1.2.1/lib/thor/command.rb:34:in `rescue in run’
    /opt/redmine/vendor/bundle/ruby/2.7.0/gems/thor-1.2.1/lib/thor/base.rb:525:in `handle_argument_error’: ERROR: «rails server» was called with arguments [«webrick»] (Thor::InvocationError)
    Usage: «rails server -u [thin/puma/webrick] [options]»

  2. Запускать тестовый сервер надо вот
    bundle exec rails server -u webrick -e production

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *