ООО «ТМ Софт», г. Москва
Платформа управления проектами и портфелями ProProject
Инструкция по установке
Аннотация
В данном документе приведены требования к аппаратному и программному обеспечению, а также описания процессов, необходимых для установки ПО «Платформа управления проектами и портфелями ProProject» (далее по тексту — «Система» или «ProProject»), в том числе для загрузки и распаковки дистрибутивов ПО с дальнейшей пошаговой инструкцией по настройке всех компонентов Системы.
Содержание
1. Общие требования1.1 Требования к аппаратному обеспечению
1.2 Требования к системному программному обеспечению
2. Загрузка и распаковка дистрибутива3. Установка API (backend)3.1 Перейти в директорию /opt/proproject-server
3.2 Устанавливаем зависимости
3.3 Создаем виртуальное окружение, устанавливаем пакеты
3.4 Создаем и настраиваем базу данных
3.5 Создаем настройки
3.6 Создаем структуру базы данных
3.7 Финальные настройки
3.8 Создаем конфигурационные файлы сервисов
3.9 Запуск и проверка сервисов
4. Установка frontend4.1 Настройка Nginx
4.2 Установка зависимостей и подготовка к сборке
4.3 Сборка
4.4 Проверка
4.5 Регистрация в системе
1. Общие требования
1.1 Требования к аппаратному обеспечению:● Объем оперативной памяти не менее 8 Гб.
1.2 Требования к системному программному обеспечению:● Ubuntu Linux не ниже 18.04 LTS.
2. Загрузка и распаковка дистрибутива
Дистрибутив системы состоит из API (backend) и веб-приложения (frontend).
Ссылки для загрузки дистрибутивов:
API:
http://пропроджект.рф/dw/proproject-server-master.zipВеб-приложение:
http://пропроджект.рф/dw/proproject-client-master.zipАрхив proproject-server-master.zip распакуйте в директорию /opt/proproject-server
Архив proproject-client-master.zip распакуйте в директорию /opt/proproject-client
Предоставьте права на чтение, запись и изменение файлов в этих директориях, пользователю, от имени которого будут запускаться скрипты node package manager.
3. Установка API (backend)
3.1 Перейти в директорию /opt/proproject-server3.2 Устанавливаем зависимости$ sudo apt update
$ sudo apt upgrade
$ sudo apt install software-properties-common
$ sudo add-apt-repository ppa:deadsnakes/ppa
$ sudo apt install python3.11 python3.11-venv python3.11-dev
$ sudo apt install postgresql-14 postgresql-client-14 gcc libpq-dev nginx redis
3.3 Создаем виртуальное окружение, устанавливаем пакеты$ python3.11 -m venv venv
$ source venv/bin/activate
(venv) $ pip install --upgrade pip
(venv) $ pip install -r requirements.txt
(venv) $ pip install gunicorn
3.4 Создаем и настраиваем базу данных$ sudo -u postgres psql
CREATE USER <username> WITH ENCRYPTED PASSWORD <user_password>;
ALTER ROLE <username> SET client_encoding TO 'utf8';
ALTER ROLE <username> SET default_transaction_isolation TO 'read committed';
ALTER ROLE <username> SET timezone TO 'UTC';
create database <db_name> with owner <username> encoding 'UTF8' LC_COLLATE = 'en_US.UTF-8' LC_CTYPE = 'en_US.UTF-8' template template0;
GRANT ALL PRIVILEGES ON DATABASE <db_name> TO <username>;
Где:
<db_name> - имя создаваемой базы данных
<username> - имя пользователя
<user_password> - пароль пользователя
3.5 Создаем настройки(venv) $ cp core/settings/example_dev_settings.py core/settings/settings.py
Редактируем файл core/settings/settings.py, вписываем в него параметры подключения к базе данных (см. п. 3.4), при необходимости изменяем другие параметры (подробнее см.
https://django.fun/docs/django/5.0/topics/settings/ )
3.6 Создаем структуру базы данных(venv) $ ./manage.py migrate
(venv) $ ./manage.py checkdata
(venv) $ ./manage.py updatedata
3.7 Финальные настройки(venv) $ mkdir -p static
(venv) $ python manage.py collectstatic
3.8 Создаем конфигурационные файлы сервисов$ cp core/configs/example.wsgi.py core/wsgi.py
$ cp core/configs/example.tigr-server.service tigr-server.service
$ cp core/configs/example.tigr-celery.service tigr-celery.service
$ cp core/configs/example.tigr-ws.service tigr-ws.service
При необходимости отредактировать сервис-файлы и указать в них корректные пути или пользователей
3.9 Запуск и проверка сервисов$ sudo systemctl enable /opt/proproject-server/tigr-server.service
$ sudo systemctl enable /opt/proproject-server/tigr-celery.service
$ sudo systemctl enable /opt/proproject-server/tigr-ws.service
$ sudo systemctl start tigr-server
$ sudo systemctl start tigr-celery
$ sudo systemctl start tigr-ws
$ sudo systemctl status tigr-server
$ sudo systemctl status tigr-celery
$ sudo systemctl status tigr-ws
4. Установка веб-приложения
4.1 Настройка NginxПерейдите в директорию /opt/proproject-client и выполните команду:
$ cp deployment/proproject-client.conf proproject-client.conf
Отредактируйте файл proproject-client.conf:
● Укажите выделенное вам имя сервера (параметр server_name)
● Пропишите пути до ssl-сертификатов
● Проверьте пути в параметрах root и всех параметрах location
Активируем конфигурацию Nginx:
$ ln -s /opt/proproject-client/proproject-client.conf /etc/nginx/sites-enabled/
$ nginx -t
$ systemctl restart nginx
4.2 Установка зависимостей и подготовка к сборке$ cp apps/core-project/environments/example_environment.ts apps/core-project/environments
$ cp apps/core-project/environments/example_environment.prod.ts apps/core-project/environments
В обоих файлах изменяем параметры API_BASE_PATH и websocketURL, подставляя имя или ip-адрес сервера.
4.3 Сборка$ ./update.sh
После окончания скрипта сборка завершена.
4.4 ПроверкаДля проверки перейти на страницу « https://<имя или ip-адрес сервера/ »
В случае успешной установки откроется приглашение ввести пользователя и пароль.
4.5 Регистрация в системеДля регистрации и входа в систему нужно пройти на страницу « https://<имя или ip-адрес сервера/registration », ввести email.
После этого на email придет ссылка для установки пароля, после установки пароля откроется главный экран системы.