Шпаргалка установки сервера взаимодействия без MSI(9.0.33) использованием Postgresql в docker-compose

Публикация № 1417992 07.04.21

Инструментарий разработчика - DevOps - docker

сервер взаимодействия docker-compose postgresql

Какой бы не был бизнес - он нуждается в коммуникации. У кого-то Telegram, у других - Whatsapp, у кого то - электронные письма. Возникла задача наладить общение между пользователями базы 1С без мессенджеров. Скачав самую свежую версию на момент написания статьи 9.0.33, обнаружились некоторые подводные камни при установке.

Во первых: установщика 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

 

Совместное использование 1С:Сервер взаимодействия и Документооборот 8 КОРП, редакция 2.1.13 - Уведомления для рабочего стола

 

Если вы получаете ошибку:

"Ошибка при регистрации. Ошибка протокола системы взаимодействия."  - попробуйте перезагрузить службу сервера взаимодействия.

 

Статья является шпаргалкой для тех кто пробует совместить сервер взаимодействия и Postgresql в docker-compose.

Приветствуются комментарии и дополнения. А также указанные неточности или допущенные ошибки.

Специальные предложения

Оставьте свое сообщение

См. также

Окей, Google

Интеграция с сервисами Искусственный интеллект (AI) docker v8 Россия Бесплатно (free)

Пример интеграции Google Ассистента с 1С. В основе которого лежит платформа Dialogflow CX для понимания естественного языка.

28.10.2021    1175    Soloist    6    

Docker для 1Сника

docker v8 Бесплатно (free)

На онлайн митапе «DevOps в 1С» Руслан Жданов рассказал, для чего 1С-нику нужен Docker, как его применять, какие сервисы можно вынести в контейнеры и как организовать взаимодействие контейнеров друг с другом.

07.06.2021    5002    ZhdanovR    13    

Запуск Apache 2.4 с модулем 1С внутри Docker контейнера

Инструменты администратора БД WEB docker Apache v8 Бесплатно (free)

Про Apache и про Linux слышали, наверное, все. А вот про Docker пока нет, но он сильно набирает популярность последнее время и не зря. Поделюсь своим опытом и дам пошаговую инструкцию настройки веб-сервера Apache с модулем 1С внутри Docker контейнера на Linux хосте. При этом сам сервер 1С может находиться совсем на другой машине и на другой операционной системе. Это не важно, главное чтобы Apache смог достучаться до сервера 1С по TCP. В статье дам подробное пояснение по каждой используемой команде со ссылками на документацию по Docker, чтобы не создавалось ощущение непонятной магии. Также прилагаю git репозиторий с описанием всей конфигурации, можете попробовать развернуть у себя буквально за 10 минут.

04.04.2018    32742    petr.myazin    39