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

07.04.21

Разработка - DevOps и автоматизация разработки

Какой бы не был бизнес - он нуждается в коммуникации. У кого-то 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.

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

Вступайте в нашу телеграмм-группу Инфостарт

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

См. также

Инструменты администратора БД DevOps и автоматизация разработки Системный администратор 1С:Предприятие 8 Абонемент ($m)

Создаем Docker-контейнер для windows-версии 1C. Контейнеры позволяют подготовить рабочую среду на любой актуальной версии windows. Благодаря данной технологии можно беспрепятственно запускать требуемую версию сервера 1С или несколько серверов различных версий на одном сервере.

1 стартмани

02.10.2018    49548    50    lishniy    42    

135

Корректировка данных DevOps и автоматизация разработки Системный администратор Программист 1С:Предприятие 8 Абонемент ($m)

Мы рассмотрим пример создания заданий выполнения автоматизированных тестов из 1С с использованием различных Фреймворков (xUnit1C, Тестирование 3.0): запуск, ожидание завершения, загрузка результатов и выполнение полного цикла тестирования продукта. Убедимся, что все действия можно выполнить в пару кликов в дружественном интерфейсе.

1 стартмани

09.07.2018    28367    18    ivanov660    5    

88

OneScript DevOps и автоматизация разработки Системный администратор Программист 1С:Предприятие 8 1C:Бухгалтерия ИТ-компания Бесплатно (free)

Решаем задачу: автоматизировать обновление тестовых баз 1С из хранилища конфигурации при появлении в нём новых изменений. Данная статья родилась в муках хождения по граблям и поиска безопасного форватора среди подводных камней. Изложение постарался представить в виде инструкции для новичка, в которой собрал всё, с чем пришлось столкнуться. Сам я не DevOps-ер, ни на что не претендую, просто делюсь опытом :)

17.06.2018    34380    stas_ganiev    37    

140

DevOps и автоматизация разработки Программист 1С:Предприятие 8 Бесплатно (free)

В статье речь пойдет о том, как при разработке в 1С добиться автоматизации и универсальности, о тех инструментах, которые помогают нам, разработчикам 1С, сохранять самое ценное, что у нас есть – наше время.

07.06.2017    31307    ekaruk    9    

105

Инструменты администратора БД DevOps и автоматизация разработки Системный администратор Программист Бесплатно (free)

Создаем Docker-контейнер для Linux-версии 1C. Например, чтобы беспрепятственно использовать его на любом Linux дистрибутиве и не держать при этом "дремучих" версий библиотек в системе.

11.09.2016    29415    b00t    52    

86

Архивирование (backup) Администрирование СУБД DevOps и автоматизация разработки Системный администратор Программист 1С:Предприятие 8 Россия Абонемент ($m)

Скрипт позволяет произвести выгрузку информационной базы 1С клиент-серверного варианта.

1 стартмани

06.11.2015    48962    24    bashirov.rs    31    

24

DevOps и автоматизация разработки 1С:Франчайзи, автоматизация бизнеса Бесплатно (free)

В этой статье я постарался собрать легко диагностируемые проблемы команд, которые мешают им стать лучше.

12.08.2015    26406    Stepa86    17    

184
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. user1769583 08.04.22 11:37 Сейчас в теме
Спасибо за шпаргалку ! На дворе 2022 год, версии все поновее, ставлю под виндой. Всё у меня шло хорошо до момента запуска службы cs. И так же она валится через 10-20 сек, но:
create extension я сделал заранее и под юзером db_user, а это не я конечно придумал, а ИТС.
И владелец базы у меня db_user.
Догадываюсь, что под postgres было бы всё гладко.
Но как под db_user запустить ?
вот с чего начинается:
2022/04/08-11:13:26.987-0,JAVA,0,level=ERROR,pid=6248,threadId=12,thread=launcher-start-thread (start),logger=org.flywaydb.core.internal.command.DbMigrate,message='Migration of schema "public" to version 1.0.0.1 - Initial schema failed! Changes successfully rolled back.'
2. yaroslavkravets 25 06.07.22 00:41 Сейчас в теме
(1) у вас база Postgres находится в Docker контейнере или просто развёрнута как сервис?
Для отправки сообщения требуется регистрация/авторизация