Подскажите пожалуйста: каким образом лучше всего разместить два сервера ЛЭРС УЧЕТ на одном ПК с Linux ?
Насколько я понимаю правильным будет установить СУБД непосредственно на саму ОС сервера, и развернуть два Docker контейнера, указав подключение к серверу БД.
Наверное нужно задать разное имя для баз данных, чтобы они могли совместно работать, я прав?
Думаю было бы неплохо разместить подобную инструкцию в руководстве пользователя потому что такая задача не только у нас возникнет.
Это не типичная конфигурация, поэтому, в документации не описана.
В общем, всё так. Разные контейнеры могут работать параллельно с одним сервером БД, но:
Имена баз данных должны отличаться.
Если заданы локальные пути для томов, они так же должны отличаться. Иначе серверы и службы опроса будут записывать журналы в один и тот же файл.
Можно использовать, например, такие файл docker-comose.yml. Только заменить SERVER_NAME на какое-то наименование. Например, server1, server2, или ещё что-то.
Их можно поместить в папки SERVER_NAME и запустить как обычно.
С другой стороны ничего не мешает запустить два контейнера, каждый из которых содержит в себе и Сервер ЛЭРС и сервер БД, верно? Вопрос только в производительности?
В какой то степени изоляция баз данных разных серверов наверное даже лучше в плане отказоустойчивости?
Ну да, можно и два сервера БД. Отказоустойчивость тут не повышается, так как сбой одного компьютера гарантировано свалит все сервисы. Производительность будет ниже и ресурсов будет тратиться больше,
Если мы запускаем сервер ЛЭРС в docker, предлагается запустить install.sh для настройки подключения к БД.
При этом если выбрать MSSQL сервер, и указать Логин,Пароль,Имя БД - то насколько я понимаю в процессе работы скрипта создается пользователь lers с правами на указанную БД, и данные этого пользователя прописываются в Lers.Server.xml
Если мы хотим запустить еще один экземпляр сервера ЛЭРС в контейнере - то в процессе работы скрипта пользователь БД будет пересоздан?
Как лучше поступить в случае, если есть SQL Server под Windows, и хочется к нему подключить несколько docker контейнеров?
Попрошу всё-таки создавать новые темы для вопросов, а не поднимать уже решённые старые.
Ещё раз по поводу нескольких серверов. Это нетипичная конфигурация, install.sh нужен для типичного развёртывания.
В любых других случаях вы можете указать строку подключения к серверу БД напрямую в переменной среды LERS_SERVER_DATABASE__ConnectionString. Её можно задать в compose.yml, или в команде docker run.
Тип базы данных выбирается переменной LERS_SERVER_DATABASE__Provider, она может принимать значения Postgres или SqlServer.
Создайте пользователя, пустую БД, настройте для него разрешения, подготовьте строку подключения и передайте её в контейнер. После этого всё будет работать.