Skip to content

thedemoncat/onec-instance

Repository files navigation

Сервер 1С:Предприятия

Данный комплект предназначен для быстрого развертывания серевера 1С:Предприятия на хосте для целей тестирования. Не предназначен для работы на продуктивном сервере!

Разрабатывалось и тестировалось на операционной системе Linux, но должен работать и на WIndows 10, но потребуются выполнить часть действий в ручную.

Важно

  • клонировать репозитарий вместе с сабмодулями!
    git clone --recursive https://github.com/TheDemonCat/onec-instance.git

Запуск на Linux

  1. Необходимо установить свежую версию Docker и Docker-compose c официального сайта
  2. Создать файл .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С:Предприятие

  1. Запустить скрипт развертывания инстанса:
    ./onec_instance.sh start

Во время установки потребуется ввести пароль суперпользователя. Он используется для доступа к файлу /etc/hosts. В него будет прописан IP адрес сервера 1С:Предприятие

Скрипт поддерживает несколько команд:

 - start - Запускает сервер
 - stop - останавливает сервер
 - restart - перезапускает сервер
 - status - проверятет , что контейнер с сервером запущен в текущий момент
  1. Создать новую серверную ИБ с такими параметрами подключения:

    • Кластер серверов 1С:Предприятие - onec_server
    • Тип СУБД - PostgreSQL
    • Сервер баз данных - db
    • Пользователь баз данных - postgres
    • Пароль пользователя баз данных оставляем пустым

Запуск на Windows

  1. Версия сборки windows должна быть свежее 1903, для установки wsl2. Установку wsl2 необходимо производить по этой инструкции

  2. Устанавливаем свежую версию Docker с официального сайта.

  3. Создать файл .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С:Предприятие

  1. Запускаем инстанс командой:
    docker-compose up -d
  1. Проверим, что инстанс успешно стартовал
    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...
  1. Пределяем, какой 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

  1. Открываем файл C:\Windows\System32\drivers\etc\hosts в блокноте, запущенном с правами администратора и добавляем в конце файла строчку:
172.26.71.210 onec_server

где,

172.26.71.210 - IP адрес wsl2 onec_server - имя контенера, его определяли в переменной HOSTNAME на шаге 2 (в вайле .env)

  1. Создать новую серверную ИБ с такими параметрами подключения:

    • Кластер серверов 1С:Предприятие - onec_server
    • Тип СУБД - PostgreSQL
    • Сервер баз данных - db
    • Пользователь баз данных - postgres
    • Пароль пользователя баз данных оставляем пустым

Благодарности

  • Полезные идеи по созданию образов брались из этого репозитария

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages