Обновление Doczilla со встроенной NodeJS

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

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

Обновление Doczilla на Linux

Обновление включает в себя, остановку службы, выполнения резервного копирования БД и директории с приложением, замену директории сборки и возврат документов и конфигов из копии

1. Необходимо остановить службу Doczilla

systemctl stop doczilla

2. Выполнить на сервере СУБД резервное копирование БД, используя одну из команды в примере:

## пример команды бекапа БД различными способами:
pg_dump -Fc doczilla > /tmp/doczilla.dump
pg_dump -h 127.0.0.1 -p 5432 -U postgres doczilla  >  /tmp/doczilla.dump
pg_dump -h localhost -p 5432 -U postgres doczilla | gzip > /tmp/backup_db_`date +\%Y-\%m-\%d`.sql.gz

3. Переименовать на сервере приложения рабочую версию в резервную

mv /opt/doczilla  /opt/doczilla_backup

4. Распаковать новую версию 

unzip pro.doczilla-4.0.0-202512312359.zip

5. Переименовать директорию в исходную (рабочую)

mv ./pro.doczilla-4.0.0-202512312359   /opt/doczilla

6. Внимательно переносим документы, лицензию и конфиги из резервной копии в рабочую

## копируем документы
​cp -f /opt/doczilla_backup/work /opt/doczilla/

## копируем конфигурационные файлы
cp -rf /opt/doczilla_backup/conf/spnego/* /opt/doczilla/conf/spnego/
cp -rf /opt/doczilla_backup/conf/licences /opt/doczilla/conf/
​cp -rf /opt/doczilla_backup/conf/smtp.properties /opt/doczilla/conf/

7. Отредактировать конфигурационные файлы: service.sh / server.properties ( Установка Doczilla 3.0 на Linux ОС )


## подробнее в инструкции https://help.doczilla.pro/articles/#!knowledge_base/install-doczilla-linux/a/h3_324729909
vi  /opt/doczilla/bin/service.sh

например,
SSO=
DOMAIN=


## подробнее в инструкции https://help.doczilla.pro/articles/#!knowledge_base/install-doczilla-linux/a/h3__61675794
vi  /opt/doczilla/conf/server.properties

например,
application.database.schema=
application.database.connection=
... trusted.users.create= ...
office.home=

....

8. Запустить службу Doczilla 

systemctl start doczilla

После обновления необходимо обязательно провести "Генерацию схемы".


Генерация схемы

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

например, http://localhost:9080

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




Восстановление предыдущей версии (откат обновления)

Необходимо выполнить в следующем порядке

1. произвести остановку службы приложения Doczilla

systemctl stop doczilla

2. на сервере СУБД удалить используемую базу данных: “doczilla”

su - postgres
dropdb doczilla

3. создать базу данных “doczilla”

createdb -T template0 doczilla

4. произвести на сервере СУБД восстановление (restore) базы данных из резервной копии (сделанной ранее, до обновления), примеры команды:

## пример команд восстановления БД
pg_restore -d doczilla  /tmp/doczilla.dump
psql doczilla  <  /tmp/doczilla.dump
gunzip -c /tmp/backup_db_2023-12-31.sql.gz | psql doczilla

5. произвести удаление директории Doczilla на сервере приложения;

rm -rf  /opt/doczilla/
​

6. произвести восстановление директорий на сервере приложения из резервной копии (сделанной ранее, до обновления) в папку Doczilla

cp  -rf  /opt/doczilla_backup  /opt/doczilla

7. запустить службу приложения Doczilla

systemctl start doczilla



Обновление Doczilla на Windows

Обновление включает в себя, остановку службы, выполнения резервного копирования БД и директории с приложением, замену директории сборки, настройку конфигов и возврат документов из копии

Копируем файлы обновления на сервер на диск в директорию, где установлена Doczilla, например
C:\DZ\pro.doczilla-3.2.0-202505312359.zip

1. Необходимо остановить и удалить службу Doczilla, при срабатывании фильтра SmartScreen - выбрать: "Подробнее" - нажать: "Выполнить в любом случае"

C:\DZ\doczilla\bin\stop.bat
C:\DZ\doczilla\bin\uninstall.bat​

2. Выполнить в командной строке на сервере СУБД резервное копирование БД, используя одну из команд в примере:

## перейти в директорию c СУБД, например
cd "C:\Program Files\PostgreSQL\15\bin"

## пример команды бекапа БД различными способами:
pg_dump -Fc doczilla > c:\DZ\doczilla.dump
pg_dump -h 127.0.0.1 -p 5432 -U postgres doczilla > c:\DZ\doczilla.dump

Так же можно воспользоваться программой pgAdmin​4
(подключиться к серверу СУБД - выбрать базу данных doczilla - выполнить backup)

3. Переименовать на сервере приложения рабочую версию в резервную

Можно выполнить на директории правой кнопкой мыши - Переименовать,
или через командную строку:

move C:\DZ\doczilla  C:\DZ\doczilla_backup

4. Распаковать новую версию

Можно на архиве правой кнопкой мыши - Извлечь всё - выбрать путь C:\DZ\
или воспользоваться сторонними программами, например 7-zip

5. Переименовать директорию в исходную (рабочую)

Можно на директории правой кнопкой мыши - Переименовать, и создать новую директорию log
или через командную строку:

move C:\DZ\pro.doczilla-3.2.0-202505312359  C:\DZ\doczilla

mkdir C:\DZ\doczilla\log

6. Внимательно переносим документы, лицензию и конфиги из резервной копии в рабочую

- копирование файлов и директорий можно выполнить выделением кнопкой мыши - правой кнопкой мыши Копировать и в новом месте правой кнопкой мыши Вставить,
  из директории  с резервной копией перенести всю папку work и spnego, так же файлы server.properties, smtp.properties
- или через командную строку:

## копируем нужные директории
xcopy /i /s C:\DZ\doczilla_backup\work C:\DZ\doczilla\
xcopy /i /s C:\DZ\doczilla_backup\conf\spnego C:\DZ\doczilla\conf\


## копируем конфигурационные файлы
xcopy /i /s C:\DZ\doczilla_backup\conf\server.properties C:\DZ\doczilla\conf\
xcopy /i /s C:\DZ\doczilla_backup\conf\smtp.properties C:\DZ\doczilla\conf​\

7. Отредактировать конфигурационный файл: wrapper.conf


notepad C:\DZ\doczilla\conf​\wrapper.conf
например,

## раскомментировать строку и указать путь до установленной Java JDK

set.JAVA_HOME=C:\Program Files\Java\jdk1.8.0_321​


## если используется доменная авторизация, раскомментировать все строки "Spnego setup"
## и отредактировать название домена и сайта
wrapper.java.additional.10=-Dz8.web.server.sso.domainRealm=TESTDOMAIN.LOCAL
wrapper.java.additional.11=-Dz8.spnego.targetName=HTTP/application.testdomain.local

8. Установить и запустить службу Doczilla, при срабатывании фильтра SmartScreen - выбрать: "Подробнее" - нажать: "Выполнить в любом случае"

C:\DZ\doczilla\bin\install.bat​
C:\DZ\doczilla\bin\start.bat

9. Необходимо проверить задачу Nodejs

Зайти в "Планировщик задач" выбрать задачу "Nodejs" ​в "Свойствах" задачи на вкладке "Действия", 
необходимо в строке запуска аргументы проверить (или изменить) путь до встроенной Nodejs, пример:

"C:\DZ\doczilla\nodejs\cluster.js"

После обновления необходимо обязательно провести "Генерацию схемы".


Генерация схемы

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

например, http://localhost:9080

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