Як встановити Redmine 3 з Nginx на CentOS 7

Як встановити Redmine 3 з Nginx на CentOS 7

Redmine - це веб-додаток з відкритим кодом для керування проектами та трекера випуску. Redmine заснований на Ruby on Rails Framework, має крос-платформну підтримку та крос-база даних та кодирує з перекладами для мов 42. Програмне забезпечення дає змогу відстежувати декілька проектів, інтегрує новини, документи та керування файлами та підтримку вікі за проектом. Облікові записи користувачів можуть бути ідентифіковані в каталозі LDAP, а стороннє ПЗ можна підключити через API REST.

У цьому підручнику ми встановимо Redmine 3.2 з Nginx як веб-сервер, MySQL як сервер бази даних на CentOS 7 (64 bit) операційній системі.

Необхідна умова

  • CentOS 7 - біт 64.
  • Привілеї root.

Крок 1 - встановіть залежності Redmine

Redmine має багато залежностей, які ми встановимо першими. Увійдіть на сервер CentOS 7 як адміністратор root:

ssh [електронна пошта захищена]

Встановіть всі залежності, які вимагає Redmine та пакунки, необхідні для ruby ​​та rvm, за допомогою команди yum нижче:

встановіть zlib-devel curl-devel openssl-devel httpd-devel-april-apr-util-devel mysql-devel ftp wget ImageMagick-devel gcc-c + + patch readline readline-devel zlib libyaml-devel libffi-devel роблять bzip2 autoconf automake libtool бізон iconv-devel підрив

Установка запитає пароль MySQL. Введіть свій новий Пароль користувача MySQL за запитом.

Крок 2 - встановіть Ruby та RVM

На цьому кроці ми встановимо rvm (останню версію) і рубіновий 2.2. Redmine 3.2 підтримує рубінову версію 2.2. RVM (Ruby Version Manager) - це інструмент командного рядка, який дозволяє встановлювати, керувати та працювати з кількома середовищами Ruby на одному сервері.

gpg2 –keyserver hkp://keys.gnupg.net –recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
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

Завантажте файл .bashrc і перевірте версію Ruby і RVM.

джерело ~ / .bashrc
рубій -в
rvm -v

Встановити Ruby і RVM

Крок 3 - Налаштування бази даних Redmine

На цьому кроці ми встановимо пакет mysql-server з офіційного сховища MySQL.

Додайте репозиторій Oracle MySQL і перевірте список репозиторіїв.

rpm -Uvh https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
yum repolist

щоб репозиторій сервера MySQL був успішно доданий.

Встановіть сервер MySQL за допомогою цієї команди yum.

yum встановити mysql-сервер

Коли інсталяція завершена, запустіть службу mysqld та налаштуйте пароль адміністратора MySQL.

systemctl start mysqld

Сервер Mysql був запущений. Тепер отримати тимчасовий пароль root для сервера mysql командою grep нижче:

grep 'тимчасовий пароль' /var/log/mysqld.log

Ви побачите результат подібний до цього:

2016-10-31T23: 06: 50.974555Z 1 [Примітка] Створюється тимчасовий пароль для [email protected]: /> y.)uWui8j*

Отже, ми знаємо пароль root для сервера MySQL: /> я.)uWui8j*

Тепер ми встановимо новий root-пароль для сервера mysql. Увійдіть до оболонки mysql з корінням користувача та згенерованим паролем:

mysql -u root -p
ГЕНЕРрований ПАРОЛЬ: /> я.)uWui8j*

Встановіть новий пароль користувача root із запитом mysql нижче:

АЛЬТЕР КОРИСТУВАЧ "root" @ "localhost" ІДЕНТИФІКОВАНО "Aqwe123 @!";

Потім створіть нову базу з назвою redmine і створіть новий користувач redmine з паролем redmine (використовуйте захищений пароль на своєму сервері тут!). Потім надішліть усі привілеї для користувача в базу даних "Redmine".

створити базу даних redmin;
створити користувача [захищено електронною поштою], ідентифікованого "Redmine123 @!";
надати всі привілеї на Redmine. * на [захищений електронною поштою], визначений 'Redmine123 @!';
флеш пільг;
вихід

База даних та користувача створено.

Налаштуйте базу даних MySQL для Redmine

Крок 4 - встановіть Phusion Passenger та Nginx

Phusion Passenger - це сервер веб-додатків, який може використовуватися разом із apache та nginx. Він підтримує декілька мов: Ruby, Python і Nodejs. Ми легко, швидко, можемо обробляти більше трафіку та забезпечувати покращення безпеки.

У цьому розділі ми встановимо Phusion Passenger та інтегруємо його з нашим nginx веб-сервером. Встановіть пасажира нижче команду gem, потім запустіть команду пасажира-nginx-модуля.

драгоценний камінь встановити пасажир-но-ри-н-рдок
пасажир-установка-nginx-модуль

Команда запитає вас, яку мову програмування використовувати, виберіть рубін і Пітон.

Тьюзінг Пасажир

Вас попросять про встановлення nginx; виберіть "Так: завантажте, компілюйте та встановлюйте Nginx для мене. (рекомендовано)".

Встановіть Nginx з пасажиром Phusion

Вам буде запропоновано встановити каталог nginx, скористайтеся стандартним "/ opt / nginx / ', просто натисніть "вводити".

Крок 5 - Налаштування Nginx

Після завершення встановлення nginx перейдіть до каталогу встановлення та відредагуйте файл nginx.conf за допомогою редактора.

cd / opt / nginx /
cd conf /
vim nginx.conf

Вставте конфігурацію нижче в рядку 24:

включати vhost / *. conf;

Збережіть файл і вийдіть з редактора.

Створіть нову директорію vhost для конфігурації віртуального хоста.

mkdir -p / opt / nginx / conf / vhost

Перейдіть до каталогу vhost і створіть конфігурацію redmine virtualhost за допомогою vim:

cd / opt / nginx / conf / vhost /
vim redmine.conf

Вставте конфігурацію віртуального хоста нижче:

    сервер {слухати 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; }}

Збережіть файл.

Ubuntu 16.04 використовує systemd як init system. Далі ми налаштуємо nginx для systemd. Перейдіть до директорії systemd і створіть новий сервісний файл з назвою nginx.service.

cd / lib / systemd / system /
vim nginx.service

Вставте скрипт nginx для systemd нижче:

[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 = багатокористувацький ціль

Зберегти та вийти.

Перезавантажте службу systemd і спробуйте запустити nginx за допомогою команди systemctl:

systemctl daemon-перезавантаження
systemctl почати nginx

Якщо ви хочете перевірити nginx, перевірте відкритий порт 80:

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

У розділі виробничого розділу введіть ім'я користувача бази даних та пароль:

Виробництво:
адаптер: mysql2
база даних: redmine
хост: localhost
Ім'я користувача: redmine
пароль: "Redmine123 @!"
кодування: utf8

Збережіть файл.

У каталозі Redmine створіть кілька нових каталогів та змініть власника на користувача та ніхто не покладіть групу:

mkdir -p tmp tmp / pdf public / plugin_assets
sudo chown-R ніхто: никто не записує файли log tmp public / plugin_assets
sudo chmod -r 775 файли log tmp public / plugin_assets

Встановіть залежність bundler та gem для redmine:

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.co

Відвідайте URL-адресу Redmine

Увійдіть на сторінку адміністратора: www.redmine.co/login

Користувачем за замовчуванням і паролем є "адміністратор".

Redmine Логін

Створіть новий проект зразка.

Увійдіть на панель інструментів Redmine

Зразок проекту Сторінка.

Червоний Проект Проект

Встановлення Redmine з Nginx та MySQL на CentOS 7 було успішним.

Висновок

Redmine - це веб-додаток для управління проектами та відстеження проблем. Redmine є крос-платформою, тому ми можемо запускати її на Windows, Linux або Mac OS. Redmine має підтримку багатьох баз даних, таких як MySQL, PostgreSQL, Microsoft SQL Server і SQLite. Redmine легко встановити та налаштувати, ми можемо використовувати Apache або Nginx як веб-сервер. Redmine дуже потужний і має багато функцій, таких як багатомовна підтримка, керування файлами, вікі та API REST. Redmine - це один з найкращих безкоштовних рішень, якщо ви хочете створити свій власний проект із відстеженням проблем.

джерело

залишити коментар

Цей сайт використовує Akismet для зменшення спаму. Дізнайтеся, як обробляються ваші дані коментарів.