Обновление с версии 8.1 до 8.5
Теперь можно удалить с компьютера ONLYOFFICE Community Server 8.1. Для этого выполните следующую команду внутри Docker-контейнера:
sudo apt-get remove onlyoffice
Не требуется дополнительно удалять никакие файлы вручную, просто выполните указанную выше команду, чтобы удалить с компьютера ONLYOFFICE Community Server.
Затем выполните следующую команду, чтобы обновить ONLYOFFICE Community Server до версии 8.5
sudo apt-get install onlyoffice-communityserver
База данных и все необходимые файлы должны быть автоматически получены из предыдущей версии. Запустите портал и убедитесь в его корректной работе и целостности данных.
При обновлении пакета с версии 8.1 до 8.5 обновляется база данных, поэтому необходимо еще раз выполнить резервное копирование.
Обновление с версии 8.5 до версий ниже, чем 9.1
Чтобы обновить ONLYOFFICE Community Server до версий ниже, чем 9.1, необходимо выполнить следующие действия:
Шаг 1: Перенесите данные в хранилище вне контейнеров Docker
Если вы уже установили ONLYOFFICE Community Server с возможностью сохранения данных в папках вне контейнеров Docker, можно пропустить этот шаг. В противном случае необходимо вручную выполнить резервное копирование данных портала, как описано в разделе Создание резервной копии базы данных.
Шаг 2: Убедитесь, что смонтированы все внешние папки для хранения данных
С помощью следующей команды убедитесь, что смонтированы все тома данных контейнера, используемые для хранения данных портала ONLYOFFICE Community Server:
sudo docker inspect --format='{{range $p,$conf:=.HostConfig.Binds}}{{$conf}};{{end}}' {{COMMUNITY_SERVER_ID}}
где {{COMMUNITY_SERVER_ID}} означает имя или ID контейнера ONLYOFFICE Community Server.
Имя или ID текущего контейнера
ONLYOFFICE Community Server можно легко узнать с помощью команды Docker, которая выводит список всех существующих контейнеров:
docker ps -a
Шаг 3: Удалите текущий контейнер
sudo docker rm -f {{COMMUNITY_SERVER_ID}}
где {{COMMUNITY_SERVER_ID}} означает имя или ID контейнера ONLYOFFICE Community Server.
Шаг 4: Удалите текущий образ
Образ, который использовался для установки ONLYOFFICE Community Server, также необходимо удалить, иначе он будет использоваться и для последующей установки, и обновления не произойдет:
sudo docker rmi -f $(sudo docker images | grep onlyoffice/communityserver | awk '{ print $3 }')
Шаг 5: Запустите новый образ с такими же путями привязки
sudo docker run -i -t -d -p 80:80 \
-v /app/onlyoffice/CommunityServer/logs:/var/log/onlyoffice \
-v /app/onlyoffice/CommunityServer/data:/var/www/onlyoffice/Data \
-v /app/onlyoffice/CommunityServer/mysql:/var/lib/mysql onlyoffice/communityserver
Убедитесь, что запускаете новый образ, указав пути к папкам, привязанным точно так же, как они были смонтированы до удаления образа ONLYOFFICE Community Server, в противном случае данные, сохраненные в этих папках, не будут получены автоматически.
Шаг 6: Восстановите резервную копию данных, если это необходимо
Если вы не монтировали папки при установке предыдущей версии, потребуется восстановить данные вручную. Для этого скопируйте резервную копию данных из папок на хост-машине в новый контейнер:
sudo docker cp /home/user/Backup/Data/. {{COMMUNITY_SERVER_ID}}:var/www/onlyoffice/Data
sudo docker cp /home/user/Backup/onlyoffice/. {{COMMUNITY_SERVER_ID}}:var/log/onlyoffice
sudo docker cp /home/user/Backup/mysql/. {{COMMUNITY_SERVER_ID}}:var/lib/mysql
Где {{COMMUNITY_SERVER_ID}} означает имя или ID контейнера ONLYOFFICE Community Server, а /home/user/Backup - путь к любой папке на хост-машине.
Или можно скопировать резервную копию данных из папок на хост-машине в новые смонтированные папки на хосте, указанные при установке новой версии:
sudo cp -a /home/user/Backup/Data/. /app/onlyoffice/CommunityServer/data
sudo cp -a /home/user/Backup/onlyoffice/. /app/onlyoffice/CommunityServer/logs
sudo cp -a /home/user/Backup/mysql/. /app/onlyoffice/CommunityServer/mysql
Где /home/user/Backup - это путь к любой папке на хост-машине.
Если вы создавали дамп базы данных MySQL, его можно восстановить следующим образом:
- Скопируйте файл дампа базы данных MySQL с хост-машины в новый контейнер:
sudo docker cp /home/user/dumpfile.sql {{COMMUNITY_SERVER_ID}}:/dumpfile.sql
- Войдите в контейнер:
sudo docker exec -it {{COMMUNITY_SERVER_ID}} bash
- Восстановите дамп базы данных:
mysql -u root onlyoffice < dumpfile.sql
Перезапустите Docker-контейнер:
sudo docker restart {{COMMUNITY_SERVER_ID}}
Запустите портал и убедитесь в его корректной работе и целостности данных.