Инструкция по скачиванию и установке платформы управления проектами и портфелями ProProject
г. Москва
Содержание1. Требования к аппаратному и системному программному обеспечению 3
2. Скачивание и распаковка дистрибутива 4
3. Установка API (backend) 4
3.1. Подключение репозитория с sumo 4
3.2. Обновите информацию и новых пакетах 4
3.3. Установка зависимостей 5
3.4. Установка NoneJS 5
3.5. Создание базы данных 5
3.6. Копирование и настройка datasource.json и config.yaml 5
3.7. Изменения конфигурационных файлов datasource.json 6
3.8. Сборка фреймворка loopback 6
4. Установка frontend 7
1. Требования к аппаратному и системному программному обеспечению1.Требования к аппаратному обеспечению:
● Объем оперативной памяти не менее 8 Гб.
2. Требования к системному программному обеспечению:
● Ubuntu Linux не ниже 18.04 LTS.
2. Скачивание и распаковка дистрибутива Дистрибутив системы состоит из API (backend) и веб-приложения (frontend).
Ссылки для скачивания дистрибутивов:
API:
https://dw.proproject.tech/proproject-server-master.zip Веб-приложение:
ttps://dw.proproject.tech/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-server
3.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-адрес сервера/ В случае успешной установки откроется приглашение ввести пользователя и пароль.