Данный комплект предназначен для быстрого развертывания серевера 1С:Предприятия на хосте для целей тестирования. Не предназначен для работы на продуктивном сервере!
Разрабатывалось и тестировалось на операционной системе Linux, но должен работать и на WIndows 10, но потребуются выполнить часть действий в ручную.
- клонировать репозитарий вместе с сабмодулями!
git clone --recursive https://github.com/TheDemonCat/onec-instance.git
- Необходимо установить свежую версию Docker и Docker-compose c официального сайта
- Создать файл
.env
в корне проекта. В качестве примера использовать.env.example
. В файле должны быть определены переменные:
ONEC_USERNAME=<ПОЛЬЗОВАТЕЛЬ_USERS.1C.V8.RU>
ONEC_PASSWORD=<ПАРОЛЬ_ОТ_USERS.1C.V8.RU>
ONEC_VERSION=8.3.14.1993
ONEC_PG_VERSION=9.6-2-1C
PG_PORT=5432
CRS_PORT=1542
RAS_PORT=1545
HOSTNAME=onec_server
Используемая учетная запись должна иметь доступ к скачиванию платформы 1С:Предприятие
- Запустить скрипт развертывания инстанса:
./onec_instance.sh start
Во время установки потребуется ввести пароль суперпользователя. Он используется для доступа к файлу /etc/hosts
. В него будет прописан IP адрес сервера 1С:Предприятие
Скрипт поддерживает несколько команд:
- start - Запускает сервер
- stop - останавливает сервер
- restart - перезапускает сервер
- status - проверятет , что контейнер с сервером запущен в текущий момент
-
Создать новую серверную ИБ с такими параметрами подключения:
- Кластер серверов 1С:Предприятие - onec_server
- Тип СУБД - PostgreSQL
- Сервер баз данных - db
- Пользователь баз данных - postgres
- Пароль пользователя баз данных оставляем пустым
-
Версия сборки windows должна быть свежее 1903, для установки wsl2. Установку wsl2 необходимо производить по этой инструкции
-
Устанавливаем свежую версию Docker с официального сайта.
-
Создать файл
.env
в корне проекта. В качестве примера использовать.env.example
. В файле должны быть определены переменные:
ONEC_USERNAME=<ПОЛЬЗОВАТЕЛЬ_USERS.1C.V8.RU>
ONEC_PASSWORD=<ПАРОЛЬ_ОТ_USERS.1C.V8.RU>
ONEC_VERSION=8.3.14.1993
ONEC_PG_VERSION=9.6-2-1C
PG_PORT=5432
CRS_PORT=1542
RAS_PORT=1545
HOSTNAME=onec_server
Используемая учетная запись должна иметь доступ к скачиванию платформы 1С:Предприятие
- Запускаем инстанс командой:
docker-compose up -d
- Проверим, что инстанс успешно стартовал
docker-compose ps
выглядить этио должно применно так:
onec-instance_db_1 /sbin/entrypoint.sh Exit 255 0.0.0.0:5432->5432/tcp
onec-instance_ras_1 /opt/1C/v8.3/x86_64/ras cl ... Exit 255 0.0.0.0:1545->1545/tcp
onec-instance_server_1 /opt/1C/v8.3/x86_64/ragent ... Exit 255 0.0.0.0:1540->1540/tcp, 0.0.0.0:1541->1541/tcp...
- Пределяем, какой IP адрес у wsl для этого выполняем команду непосредственно в WSL2
ip -4 addr show eth0 | grep -oP '(?<=inet\s)\d+(\.\d+){3}'
Возможно команда ip
будет отсутствовать, тогда требуется ее установить sudo apt install net-tools
$ ip -4 addr show eth0 | grep -oP '(?<=inet\s)\d+(\.\d+){3}'
172.26.71.210
Из вывода команды получаем IP адрес - 172.26.71.210
- Открываем файл
C:\Windows\System32\drivers\etc\hosts
в блокноте, запущенном с правами администратора и добавляем в конце файла строчку:
172.26.71.210 onec_server
где,
172.26.71.210
- IP адрес wsl2
onec_server - имя контенера, его определяли в переменной HOSTNAME на шаге 2 (в вайле .env
)
-
Создать новую серверную ИБ с такими параметрами подключения:
- Кластер серверов 1С:Предприятие - onec_server
- Тип СУБД - PostgreSQL
- Сервер баз данных - db
- Пользователь баз данных - postgres
- Пароль пользователя баз данных оставляем пустым
- Полезные идеи по созданию образов брались из этого репозитария