Як встановити Redmine 3.2 з Nginx на Ubuntu 16.04
Redmine - це інструмент керування проектами з відкритим кодом та інструмент відстеження проблем на основі Ruby on Rails Framework. Це веб-сайт, тому ви можете використовувати його з будь-якої клієнтської платформи, яка надає веб-браузер. Він добре підходить для багатомовних команд, оскільки містить переклади для мов 42. Ви можете відстежувати кілька проектів в одній інсталяції, вона має інтегровану підтримку для новин, управління документами, керування файлами, підтримку вікі. Ви можете з'єднати його з іншими програмами за допомогою автентифікації LDAP та API REST.
Цей підручник охоплює встановлення Redmine 3.2 за допомогою веб-сервера Nginx та сервера баз даних MySQL на операційній системі Ubuntu 16.04 (64 Bit).
Передумови
- Ubuntu 16.04 - біт 64.
- Привілеї root.
Крок 1 - встановлення залежностей
Redmine має багато залежностей, але ми можемо легко їх встановити за допомогою apt. Перший крок - стати кореневим користувачем, а потім оновити свій репозиторій Ubuntu. Всі подальші кроки в цьому підручнику виконуються як root-користувач, тому я використовую "sudo su" замість додавання sudo до кожної команди.
Sudo су
apt-get поновлення
Встановіть залежності Redmine за допомогою команди apt:
apt-get install mysql-server mysql-client libmysqlclient-dev imagemagick libmagickwand-dev libcurl4-openssl-dev git-core subversion
Програма встановлення попросить нового пароля root-сервера MySQL, введіть новий і захищений пароль MySQL там.
Крок 2 - встановіть Ruby та RVM
На цьому кроці ми встановимо останню версію RVM і Ruby 2.2. Redmine 3.2 stable підтримує Ruby версію 2.2, тому ми можемо використовувати її тут. RMV (Ruby Version Manager) - це зручний інструмент командного рядка, який дозволяє встановлювати, керувати та працювати з кількома середовищами Ruby.
gpg -keyserver hkp: //keys.gnupg.net -recv-keys D39DC0E3
curl -L https://get.rvm.io | bash -s стабільний -руба = 2.2.5
Тепер нам доведеться перезавантажити RVM і додати його до .bashrc для автоматичного перезавантаження:
source / usr / local / rvm / scripts / rvm
echo '[[-s "/ usr / local / rvm / scripts / rvm"]] && джерело "/ usr / local / rvm / scripts / rvm" ">> ~ / .bashrc
Крок 3 - налаштування бази даних MySQL для Redmine
Ми будемо створювати користувача бази даних і бази даних для установки Redmine. Увійдіть до оболонки MySQL з кореневим користувачем і своїм паролем:
mysql -u root -p
ТИП ВАШ ПАРОЛЬ
Далі створіть нову базу з назвою redmine і новий користувач із назвою redmine з паролем redmine (використовуйте кращий пароль у вашій установці, це лише приклад), а потім надайте привілеї для користувача 'redmine' в базу даних 'redmine'.
створити базу даних redmin;
створити користувача [email protected], ідентифікований за допомогою 'redmine';
надавати всі привілеї на Redmine. * до [захищені електронною поштою], позначені "redmine";
флеш пільг;
q
База даних і користувач створюються. Будь ласка, використовуйте захищений пароль на своєму сервері!
Крок 4 - встановіть Phusion Passenger та Nginx
Phusion Passenger - сервер веб-додатків, який можна інтегрувати з веб-серверами Apache та Nginx. Він підтримує кілька мов, таких як Ruby, Python і Nodejs. Це простий у використанні, швидкий і покращує безпеку налаштування.
У цій частині ми встановимо Phusion Passenger та інтегруємо його з Nginx. Redmine буде запускатися під веб-сервером Nginx. Встановіть пасажира командою gem, а потім встановіть пасажир-nginx-модуль.
драгоценний камінь встановити пасажир-но-ри-н-рдок
пасажир-установка-nginx-модуль
Ця команда запитає вас про мову, яка буде підтримуватися, виберіть рубін і Пітон тут.
Вас попросять про встановлення Nginx, виберіть "Так: завантажте, компілюйте та встановлюйте Nginx для мене. (рекомендовано)".
Нарешті, вас попросять про каталог установки Nginx, скористайтеся стандартним "/ opt / nginx / 'і натисніть "вводити".
Крок 5 - Налаштування Nginx
Перейдіть до каталогу встановлення та відредагуйте файл nginx.conf за допомогою редактора, тут я буду використовувати редактор vim.
cd / opt / nginx / conf /
vim nginx.conf
Вставте лінію конфігурації нижче в файл:
включати vhost / *. conf;
Зберегти та вийти.
Потім створіть нову директорію vhost для конфігурації віртуального хоста.
mkdir -p / opt / nginx / conf / vhost
Перейдіть до каталогу vhost і створіть файл конфігурації віртуального хосту redmine з vim:
cd / opt / nginx / conf / vhost /
vim redmine.conf
Вставте конфігурацію virtualhost нижче:
сервер {слухати 80; ім'я_сервера www.redmine.me; root / var / www / redmine / public; passenger_enabled on; client_max_body_size 10m; # Max attachemnt size # перенаправлення сторінок помилок сервера на статичну сторінку /50x.html # error_page 500 502 503 504 /50x.html; місцеположення = / 50x.html {root html; }}
Зберегти та вийти.
Далі ми налаштуємо Nginx для запуску з systemd. Перейдіть до директорії systemd і створіть новий сервісний файл 'nginx.service'.
cd / lib / systemd / system /
vim nginx.service
Вставте сценарій Nginx для системи нижче:
[Unit] Опис = NGINX HTTP і зворотний проксі-сервер Після = syslog.target network.target remote-fs.target nss-lookup.target [Сервіс] Тип = forking PIDFile = / opt / nginx / logs / nginx.pid ExecStartPre = / opt / nginx / sbin / nginx -t ExecStart = / opt / nginx / sbin / nginx ExecReload = / bin / kill -s HUP $ MAINPID ExecStop = / bin / kill -s QUIT $ MAINPID PrivateTmp = true [Встановити] WantedBy = багатокористувацький ціль
Зберегти файл і вийти.
Завантажте системні служби та спробуйте запустити Nginx за допомогою команди systemctl:
systemctl daemon-перезавантаження
systemctl почати nginx
Якщо ви хочете перевірити Nginx, перевірте відкритий порт 80 за допомогою netstat:
netstat-plntu | grep nginx
tcp 0 0 0.0.0.0: 80 0.0.0.0: * LISTEN 4871 / nginx
Крок 6 - встановіть Redmine
Створіть новий каталог для встановлення Redmine, я буду використовувати каталог '/ var / www /' тут.
mkdir -p / var / www /
Перейдіть до каталогу "/ var / www /" і завантажте redmine за допомогою команди svn:
cd / var / www /
svn co https://svn.redmine.org/redmine/branches/3.2-stable redmin
Введіть каталог redmine та скопіюйте файл конфігурації та файл конфігурації бази даних:
cd redmine
cp config / configuration.yml.example config / configuration.yml
cp config / database.yml.example config / database.yml
Потім відредагуйте файл database.yml з vim:
vim config / database.yml
На виробничій лінії заповніть дані бази даних, користувача бази даних та пароля. Використовуйте дані бази даних, створені вами в розділі 3.
виробництво: адаптер: база даних mysql2: redmin хост: localhost ім'я користувача: redmine пароль: кодування "redmine": utf8
Збережіть файл і вийдіть з редактора.
У каталозі redmine створіть новий каталог і змініть власника на www-data:
mkdir -p tmp tmp / pdf public / plugin_assets
sudo chown-R www-data: файли www-даних log tmp public / plugin_assets
sudo chmod -r 775 файли log tmp public / plugin_assets
Потім встановіть для Redmine залежність bundler та gem:
gem install bundler
пакети встановлення-без тесту на розробку
Тепер генеруйте таємний токен, а потім генеруйте базу даних:
пакета exec rake generate_secret_token
RAILS_ENV = Виробничий пучок exec rake db: мігрувати
RAILS_ENV = Виробничий пакет розблокування redmin: load_default_data
Перезапустіть Nginx та відвідайте домен Redmin через веб-браузер:
systemctl перезапустити nginx
Відвідайте закладку redmine, у моєму випадку: www.redmine.me
Увійдіть на сторінку адміністратора: www.redmine.me/login
Користувачем за замовчуванням і паролем є "адміністратор".
Створити новий зразковий проект.
Зразок проекту Сторінка.
Встановлення Redmine з Nginx та MySQL успішно завершено.
Висновок
Redmine - це веб-додаток для управління проектами та відстеження проблем. Redmine - це крос-платформний додаток, тому ми можемо запускати його на Windows, Linux та Mac OS. Він підтримує різні бази даних, такі як MySQL, PostgreSQL, Microsoft SQL Server і SQLite. Redmine легко встановити та налаштувати, ми можемо використовувати Apache або Nginx як веб-сервер. Redmine дуже потужний і має багато функцій, таких як багатомовна підтримка, керування файлами, вікі та API REST. Redmine - це один з найкращих рішень OpenSource для створення власного управління проектами з відстеженням проблем.