Files
DFWebOS-Apps/1c/README.md

5.3 KiB
Raw Blame History

1С:Предприятие — веб-публикация для DFWebOS

Контейнер с Apache 2.4 и модулем веб-сервера 1С:Предприятие 8.3, публикующий информационную базу 1С по пути /BuhBase.

Это веб-фронтенд. Сам сервер 1С:Предприятие должен быть запущен отдельно (на той же машине или в локальной сети) — приложение лишь публикует информационную базу через Apache.

Адаптация репозитория petrmyazin/docker-apache-1c-example под фреймворк приложений DFWebOS.

Структура каталога

1c/
├── dfwebos-app.yml            # манифест приложения для DFWebOS
├── docker-compose.yml         # описание сервиса (использует build: ./build)
├── README.md                  # этот файл
├── build/                     # build-контекст образа Apache + модуль 1С
│   ├── Dockerfile
│   ├── httpd.conf             # преднастроенный конфиг Apache + публикация /BuhBase
│   ├── default.vrd            # дефолтные настройки подключения к серверу 1С
│   ├── .gitignore             # исключает deb64.tar.gz из git
│   └── deb64.tar.gz           # ⚠️ положить вручную, см. ниже
└── data/
    └── vrd/
        └── default.vrd        # настройки подключения, монтируются в контейнер

Подготовка перед установкой

1. Скачать дистрибутив сервера 1С:Предприятие

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

  1. Откройте releases.1c.ru.

  2. Перейдите в раздел Технологическая платформа 8.3 → Cервер 1С:Предприятия (64-bit) для DEB-based Linux-систем.

  3. Скачайте архив версии 8.3.23.1912 (или другой — см. примечание ниже).

  4. Сохраните файл как:

    1c/build/deb64.tar.gz
    

При смене версии платформы обновите путь к wsap24.so в build/httpd.conf (строка LoadModule _1cws_module /opt/1cv8/x86_64/<версия>/wsap24.so) и поле version в dfwebos-app.yml.

2. Настроить подключение к серверу 1С

Отредактируйте файл data/vrd/default.vrd, указав:

  • адрес вашего сервера 1С:Предприятие (Srvr=),
  • имя информационной базы (Ref=).

Пример:

<?xml version="1.0" encoding="UTF-8"?>
<point xmlns="http://v8.1c.ru/8.2/virtual-resource-system"
       base="/BuhBase"
       ib="Srvr=192.168.10.195;Ref=УПФ"
       enableStandardOData="true">
    <ws publishExtensionsByDefault="true"/>
    <httpServices publishByDefault="true" publishExtensionsByDefault="true"/>
</point>

Файл смонтирован томом — изменения подхватываются перезапуском приложения, без пересборки образа.

3. (Опционально) добавить DNS-имена сервера 1С

Если в default.vrd используется DNS-имя сервера 1С (а не IP), которое не разрешается из контейнера, раскомментируйте блок extra_hosts: в docker-compose.yml и пропишите соответствие имени и IP-адреса.

Установка и запуск в DFWebOS

После того как deb64.tar.gz положен в build/ и data/vrd/default.vrd настроен, приложение можно устанавливать стандартным способом DFWebOS — образ соберётся автоматически на первом запуске.

После установки информационная база будет доступна по адресу:

http://<dfwebos-host>:8180/BuhBase/

Несколько информационных баз

Чтобы опубликовать вторую базу:

  1. Подготовьте отдельный .vrd (например, another.vrd) рядом с default.vrd в data/vrd/.
  2. Добавьте в build/Dockerfile копирование своего .vrd в каталог /usr/local/apache2/htdocs/<AnotherBase>/.
  3. Раскомментируйте и адаптируйте блок второй базы в build/httpd.conf (см. конец файла).
  4. Смонтируйте новый .vrd томом в docker-compose.yml.
  5. Переустановите приложение в DFWebOS, чтобы пересобрать образ.