Постановка задачи
Стандартный сценарий запуска ЕССМ подразумевает, что при запуске системы будут предоставлены права подключения привилегированного пользователя Postgres с правами на создание баз данных, пользователей и подключение плагинов к базам данных. Данный сценарий реализуется запуском базы данных на отдельном сервере при помощи Docker-контейнера, с инструкцией по данному алгоритму можно ознакомиться на странице инструкции по запуску ЕССМ с базой данных на отдельном сервере. Если такой подход невозможен по требованиям безопасности, то необходимые базы данных и пользователей нужно будет создать вручную. Алгоритм создания базы данных вручную для Ubuntu 22.04.5 описан ниже.
Запуск с созданием баз данных вручную
Настройка сервера баз данных
1. Установить СУБД PostgresPro или СУБД PostgreSQL 14:
| Блок кода |
|---|
|
# Установка пакета с PostgreSQL 14
sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
# Установка PostgreSQL 14 на сервер
sudo apt update
sudo apt install postgresql-14
# Запуск сервиса PostgreSQL
sudo systemctl start postgresql |
2. Установить плагин timescaledb с версией 2.13.1 и timescaledb-toolkit с версией 1.18.0.
| Подсказка |
|---|
| title | Установка плагина timescaledb |
|---|
|
Для установки плагинов timescaledb и timescaledb-toolkit рекомендуется обратиться к официальной документации. |
3. Создать базы данных, активировать расширения и добавить пользователей:
| Блок кода |
|---|
|
CREATE DATABASE eccm;
-- После создания базы данных, перейдите в нее для выполнения дальнейших команд
\c eccm
CREATE USER eccm WITH ENCRYPTED PASSWORD 'eccm';
GRANT ALL PRIVILEGES ON DATABASE eccm TO eccm;
CREATE EXTENSION IF NOT EXISTS timescaledb CASCADE;
CREATE EXTENSION IF NOT EXISTS timescaledb_toolkit;
CREATE EXTENSION IF NOT EXISTS pg_stat_statements;
CREATE EXTENSION IF NOT EXISTS pg_trgm;
ALTER EXTENSION timescaledb UPDATE;
ALTER EXTENSION timescaledb_toolkit UPDATE;
|
Настройка сервера ECCM
Настройка параметров доступа к БД у сервисов ECCM
В файле ./eccm/.env необходимо настроить параметры доступа к базе данных:
| Блок кода |
|---|
ROOT_POSTGRES_USER=tester
ROOT_POSTGRES_PASSWORD=tester
ECCM_POSTGRES_DB=eccm
ECCM_POSTGRES_USER=eccm
ECCM_POSTGRES_PASSWORD=eccm
|
Запуск проекта с помощью compose-tools.sh
Запустить скрипт compose-tools.sh в корневой директории проекта, указав ключи:
| Блок кода |
|---|
--pull
--start <адрес WEB интерфейса>
--database-host <HOST>
--database-port <PORT> |
Например:
| Блок кода |
|---|
./compose-tools.sh --pull --start eccm9.test.loc --database-host 100.110.2.2 --database-port 5432 |
Контейнеры продукта ЕССМ самостоятельно проведут миграции и создадут таблицы для полноценной работы системы в базе данных.