Установка с PostgreSQL (Docker) на одном сервере (ВМ) с приложением
Для установки необходимо выполнить следующие действия:
Выполнить обновление списка доступных пакетов:
apt update
Установить Docker и Docker-compose:
apt install -y docker.io docker-compose
Создать директорию для PostgreSQL:
mkdir -p /srv/postgresql
Создать файл docker-compose.yml для PostgreSQL и добавить в него конфигурацию:
cd /srv/postgresql/ nano docker-compose.yml
version: "3" services: postgres: image: postgres:11 restart: always environment: POSTGRES_DB: "polymatica" POSTGRES_USER: "polymatica" POSTGRES_PASSWORD: "polymatica" PGDATA: "/var/lib/postgresql/data/pgdata" volumes: - ./psql_init.sh:/docker-entrypoint-initdb.d/init-database.sh - /srv/postgresql/data/pgdata:/var/lib/postgresql/data/pgdata ports: - 0.0.0.0:5432:5432
Создать файл psql_init.sh, добавить в него конфигурацию и предоставить права на исполнение:
nano psql_init.sh chmod +x psql_init.sh
#!/bin/bash set -e psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_USER" <<-EOSQL CREATE DATABASE platform_manager_cache; GRANT ALL PRIVILEGES ON DATABASE platform_manager_cache TO polymatica; CREATE DATABASE platform_manager; GRANT ALL PRIVILEGES ON DATABASE platform_manager TO polymatica; CREATE DATABASE platform_dashboard; GRANT ALL PRIVILEGES ON DATABASE platform_dashboard TO polymatica; CREATE DATABASE platform_notifications; GRANT ALL PRIVILEGES ON DATABASE platform_notifications TO polymatica; CREATE DATABASE platform_logstash; GRANT ALL PRIVILEGES ON DATABASE platform_logstash TO polymatica; CREATE DATABASE platform_storage; GRANT ALL PRIVILEGES ON DATABASE platform_storage TO polymatica; EOSQL
Запустить PostgreSQL:
docker-compose up -d
Создать директорию для репозитория:
mkdir -p /srv/polymatica/repo/
Скачать архив репозитория astra.zip в созданную директорию:
https://repo.polymatica.ru/platform/packages/releases/1.10.0/astra.zip
Разархивировать архив репозитория astra.zip:
cd /srv/polymatica/repo/ unzip astra.zip
Добавить ключ для репозитория в список доверенных ключей:
cp polymatica.key /etc/apt/trusted.gpg.d/polymatica.asc
Подключить репозиторий:
echo "deb file:/srv/polymatica/repo/astra/orel/ orel main" > /etc/apt/sources.list.d/polymatica.list
Выполнить обновление списка доступных пакетов:
apt update
Установить пакет для организации работы с PostgreSQL:
apt install polymatica-platform-external-postgresql
Включить конфигурирование БД и отредактировать параметры подключения (user, password, host) к PostgreSQL в файле postgresql.env:
sed -i 's/false/true' /etc/polymatica/platform/env.d/postgresql.env
Установить приложение:
apt install polymatica-platform
Проверить статус сервисов приложения:
for service in $(systemctl list-unit-files polymatica-platform* | grep .service | cut -d. -f1); do echo "$service is $(systemctl show -p SubState --value $service)"; done
Активировать лицензию:
Для активации лицензии необходимо выполнить шаги описанные в инструкции - Лицензирование системыДля первого входа в систему необходимо использовать стандартные данные:
Установка с отдельно стоящим PostgreSQL
Для установки необходимо выполнить следующие действия:
- Создать пользователя в PostgreSQL (например, polymatica)
Создать БД для приложения и предоставить на них права для созданного пользователя:
CREATE DATABASE platform_manager_cache; GRANT ALL PRIVILEGES ON DATABASE platform_manager_cache TO polymatica; CREATE DATABASE platform_manager; GRANT ALL PRIVILEGES ON DATABASE platform_manager TO polymatica; CREATE DATABASE platform_dashboard; GRANT ALL PRIVILEGES ON DATABASE platform_dashboard TO polymatica; CREATE DATABASE platform_notifications; GRANT ALL PRIVILEGES ON DATABASE platform_notifications TO polymatica; CREATE DATABASE platform_logstash; GRANT ALL PRIVILEGES ON DATABASE platform_logstash TO polymatica; CREATE DATABASE platform_storage; GRANT ALL PRIVILEGES ON DATABASE platform_storage TO polymatica;
- Настроить доступность PostgreSQL с сервера (ВМ), на котором будет установлено приложение
Выполнить пункты 7-14 вышеуказанной инструкции