Во первых: установщика MSI там нет, только такой список файлов:
Во вторых: для работы необходима Java 11 (на установленной версии 8 работать отказался)
В-третьих: так как используется сервер MSSQL, который лежит на другом сервере, и Postgres туда устанавливать дополнительно не хочется - решено использовать имеющийся linux сервер с установленной убунтой.
Как устанавливать Java - писать не буду, вендор рекомендует пакет Liberica OpenJDK.
Идем сюда: BellSoft и качаем версию 11(!) и полный пакет JDK(только полный).
Под правами администратора запускаем файл 1ce-installer.cmd и выполняем установку(полную).
Казалось бы - бери и пользуйся, но нет. Никаких ярлыков нет. И новый служб тоже.
Запускаем командную строку под правами админа и проверяем:
ring -version
Если версия показалась можно идти дальше, иначе что-то установкой.
Создаем папку C:\1ce(можно в другом месте)
Дальше выполняем по инструкции:
1. Создание инстансов:
ring hazelcast instance create --dir C:\1ce\hazelcast
ring elasticsearch instance create --dir C:\1ce\elasticsearch
ring cs instance create --dir C:\1ce\cs
2. Настройка websocket:
Порт может быть любым свободным в системе.
ring cs --instance cs websocket set-params --hostname localhost
ring cs --instance cs websocket set-params --port 9191
3.1 Настройка Postgresql на убунте.
Подключаемся по ssh, создаем папку 1c_pg и в ней создаем папку data и файл docker-compose.yml со следующим содержанием:
version: "3"
services:
db:
image: postgres
volumes:
- ./data/db:/var/lib/postgresql/data
environment:
- POSTGRES_DB=postgres
- POSTGRES_USER=postgres
- POSTGRES_PASSWORD=postgres
restart: always
сохраняем и запускаем:
docker-compose up -d
3.2 Файла с настройками где можна прописать пока не существует - продолжаем в cmd:
ring cs --instance cs jdbc pools --name common set-params --url jdbc:postgresql://192.168.1.41:5432/postgres?currentSchema=public
ring cs --instance cs jdbc pools --name common set-params --username postgres
ring cs --instance cs jdbc pools --name common set-params --password postgres
ring cs --instance cs jdbc pools --name privileged set-params --url jdbc:postgresql://192.168.1.41:5432/postgres?currentSchema=public
ring cs --instance cs jdbc pools --name privileged set-params --username postgres
ring cs --instance cs jdbc pools --name privileged set-params --password postgres
192.168.1.41 - адрес Ubuntu с Docker-compose
4. Создание служб:
ring hazelcast --instance hazelcast service create
ring elasticsearch --instance elasticsearch service create
ring cs --instance cs service create
Проверяем работоспособность служб. Если служба cs останавливается с ошибкой(через 10-20 сек. после старта):
[42883] ERROR: function uuid_generate_v4() does not exist
[2021-04-05 00:10:23] Подсказка: No function matches the given name and argument types. You might need to add explicit type casts.
[2021-04-05 00:10:23] Позиция: 49
подключаемся к контенеру с БД(созданным в п. 3.1) и выполняем коменду SQL:
CREATE EXTENSION IF NOT EXISTS "uuid-ossp";
5. Завершение настройки(взято с ИТС, без этого пункта база не подключается к серверу взаимодействия):
curl -Sf -X POST -H "Content-Type: application/json" -d "{ \"url\" : \"jdbc:postgresql://192.168.1.41:5432/postgres\", \"username\" : \"postgres\", \"password\" : \"postgres\", \"enabled\" : true }" -u admin:admin http://localhost:8087/admin/bucket_server
6. Проверка состояния:
http://localhost:8087/rs/health
7. Если все хорошо - осталось подключить базу к серверу взаимодействия.
Скриншот(не сохранился, взят из интернета):
Порт - тот который указывали при начале: 9191
Если вы получаете ошибку:
"Ошибка при регистрации. Ошибка протокола системы взаимодействия." - попробуйте перезагрузить службу сервера взаимодействия.
Статья является шпаргалкой для тех кто пробует совместить сервер взаимодействия и Postgresql в docker-compose.
Приветствуются комментарии и дополнения. А также указанные неточности или допущенные ошибки.