Установка Doczilla в Docker

Любая инструкция является примерной,
и создана для того, чтобы показать основные команды и действия,
в связи с очень большим разнообразием linux-систем и windows-систем

Установку программного обеспечения должен выполнять технический специалист с базовыми знаниями и навыками администрирования систем Linux и базами данных PostgreSQL

Для корректной работы приложения Doczilla Pro требуется предварительная установка следующих компонентов:

  • ПО Docker CE версии 19.03 или выше (рекомендуется воспользоваться официальной документацией на сайте https://www.docker.com для установки);
  • СУБД PostgreSQL, установленная и настроенная с локалью ru_RU.UTF8, с созданной схемой и установленным расширением pg_trgm.

Состав образа

Образ doczilla-pro собран на основе официального образа OpenJDK JRE 8 – например openjdk:8u242-jre, содержащего среду исполнения JRE 8, необходимую для функционирования Doczilla Pro.

Файлы приложения находятся внутри образа в каталоге /opt/doczilla/, который имеет следующую структуру:

  • bin – скрипты запуска и остановки приложения
  • conf - файлы настройки и конфигурации
  • lib – библиотеки приложения
  • web – WEB-ресурсы приложения
  • work – каталог с рабочими файлами приложения, в котором следует отметить следующий подкаталог:
    • documents – каталог, в котором обрабатываются загружаемые в Doczilla Pro документы

 Настоятельно рекомендуется монтировать этот каталог к внешним томам (ключ при запуске:   -v /opt/docker/doczilla/work:/opt/doczilla/work ):

т.к. в процессе работы Doczilla Pro изменяет файлы в этом каталоге, и при обновлении версии файлы останутся целыми (перед обновлением обязательно сделать резервную копию этих директорий и БД).

 Контейнер использует следующие переменные окружения:

  • DOCZILLA_DB_SCHEMA – схема в БД, необходимо указать свою схему (по умолчанию 'public');
  • DOCZILLA_DB_USER – пользователь, от имени которого производится подключение к БД, по умолчанию 'doczilla';
  • DOCZILLA_DB_PASSWORD – пароль пользователя, от имени которого производится подключение к БД, по умолчанию 'doczilla';
  • DOCZILLA_DB_CONNECTION – строка подключения к БД в формате JDBC, по умолчанию 'jdbc:postgresql://localhost/doczilla'  (localhost - имя хоста СУБД, doczilla - имя БД).

Контейнер экспортирует следующие TCP-порты 9080 (ключ при запуске:   -p 9080:9080)


Пример установки docker на российских ОС

## Установка docker / docker-compose на Ред ОС
dnf install docker-ce docker-ce-cli docker-compose

## Установка docker / docker-compose на Astra Linux
apt install docker.io docker-compose-v2

## Добавление docker в автозагрузку
systemctl enable docker --now

## Проверить статус запущенной службы
systemctl status docker

## Создать именованную docker-сеть с именем doczilla
docker network create doczilla

## Создать рабочую директорию
mkdir -p /opt/docker/doczilla



Загрузка образа

Контейнеры Doczilla поставляется в заархивированном виде

## варианты команд для загрузки образа

docker load -i /path/to/doczilla-pro.tar.gz

Настройка запуска скриптом

Для запуска контейнеров используется команды, которые можно записать в скрипт

## запуск Doczilla Pro
docker run --restart always --name doczilla-pro  -d -p 9080:9080 --network doczilla  -e DOCZILLA_DB_CONNECTION=jdbc:postgresql://postgres-16/doczilla  -v /opt/volumes/documents:/opt/doczilla/work/documents  doczilla/doczilla-pro:demo

описание ключей:

   run  = создание контейнера и его запуск
   --restart  = политика перезапуска контейнера
   --name  = задаёт имя контейнера
   -d  = запуск контейнера в фоновом режиме
   -p  = проброс порта на сервер из Docker
   --network  = тип или название сети для контейнера
   -e  = передача переменных окружения
   -v  = проброс папки с сервера в Docker



Настройка запуска compose файлом

## Создать файл docker-compose.yml
touch /opt/docker/doczilla/docker-compose.yml

## Запустить контейнер через docker-compose, в зависимости от версии
docker-compose up -d
docker compose up -d

Пример содержимого файла docker-compose.yml, где необходимо сменить название имиджей и указать настройки СУБД  ip:port / имя базы данных / схему / логин и пароль пользователя:

services:
  doczillapro:
    container_name: doczilla-pro
## сменить название образа
    image: registry.doczilla.pro/doczilla-pro-***:***
    volumes:
      - /etc/localtime:/etc/localtime:ro
      - /opt/docker/doczilla/work:/opt/doczilla/work
# пример проброса файла настройки почты для отправки сообщений 
      - /opt/docker/doczilla/smtp.properties:/opt/doczilla/conf/smtp.properties
## пример проброса файла с сертификатами для работы интеграции и LDAPS
      - /etc/pki/ca-trust/extracted/java/cacerts:/etc/ssl/certs/java/cacerts
    environment:
## сменить адрес контейнера СУБД ip:port / имя базы данных / схему / логин и пароль пользователя
      - Z8_DB_CONNECTION=jdbc:postgresql://ip:port/db_name
      - Z8_DB_SCHEMA=nameschema
      - Z8_DB_USER=doczilla
      - Z8_DB_PASSWORD='doczilla'
    ports:
      - "9080:9080"
    networks:
      - default
    restart: always

networks:
  default:
    name: "doczilla"
    external: true




Первый вход и генерация схемы

Необходимо запустить браузер Google Chrome / Microsoft Edge последних версий и перейти на сайт сервера

http://localhost:9080

при первом входе откроется сайт Doczilla, где в меню "Администрирование" (кнопка "Doczilla Pro"-"Администрирование") -> необходимо выбрать "Обновление схемы базы" ("Генерация схемы").

После успешного выполнения необходимо перелогиниться, в окне авторизации ввести логин Admin поле пароля оставить пустым, нажать "Войти", после этого необходимо дважды задать пароль для учетной записи Администратора.