本指南将介绍,如何将您的 ONLYOFFICE 文档社区版 Docker 版更新到最新版。
我们的支持政策是仅支持最新的稳定版本。我们定期发布 ONLYOFFICE 文档新版本,包括新功能和问题修复。如果您使用的是旧版本的 ONLYOFFICE 文档,我们建议您升级到最新版本。
关闭 ONLYOFFICE 文档
由于其运营特点,在所有编辑文档的用户关闭文档后,ONLYOFFICE 文档才会保存文档。为避免数据丢失,在应用程序更新需要停用 ONLYOFFICE 文档时,您必须强制断开与用户的连接。为此,请执行以下脚本:
sudo docker exec {{DOCUMENT_SERVER_ID}} documentserver-prepare4shutdown.sh
这里 {{DOCUMENT_SERVER_ID}} 代表 ONLYOFFICE 文档容器名或 ID。
您可以使用 Docker 命令轻松找到当前 ONLYOFFICE 文档的容器名或 ID,所有现存的容器都会被列出:
sudo docker ps -a
执行该脚本可能需要较长时间(可能长达 5 分钟)。
断开用户连接可能需要较长时间(可能长达 5 分钟)。
更新适用于 Docker 的 ONLYOFFICE 文档
使用脚本更新
如果您的 ONLYOFFICE 文档版本是使用该脚本安装,请执行如下命令:
bash docs-install.sh -u true
输入 Y,按 Enter 键,即可使用 Docker 更新 ONLYOFFICE 文档。
只有先前使用此脚本执行安装,才能使用该脚本更新 ONLYOFFICE 文档社区版 Docker 版。
手动更新
第 1 步:检查所有外部数据存储文件夹是否已装载
请确保,使用以下命令将用于存储 ONLYOFFICE 文档数据的所有容器卷装载:
sudo docker inspect --format='{{range $p,$conf:=.HostConfig.Binds}}{{$conf}};{{end}}' {{DOCUMENT_SERVER_ID}}
第 2 步:停止使用当前 Docker 容器中的 ONLYOFFICE 文档。
sudo docker stop {{DOCUMENT_SERVER_ID}}
第 3 步:下载最新的 ONLYOFFICE 文档映像
下载指定最新标签的最新 ONLYOFFICE 文档映像:
docker pull onlyoffice/documentserver:latest
第 4 步:运行使用相同 map 路径的新映像
sudo docker run -i -t -d -p 80:80 --restart=always \
-v /host_folder:/volume \
-v /host_folder:/volume onlyoffice/documentserver
请确保,在运行新映像时将文件夹路径映射为与为先前版本装载的路径完全相同,否则应用无法自动拾取存储在这些文件夹中的数据。为此,请指定 -v 选项参数,以第 1 步中所示的实际路径取代 /host_folder:/volume 的值。
如果您使用不同的端口或 HTTPS 安装了先前版本,并希望以相同的方式安装新版本,请参考安装说明,以查找必要的命令。
安装过程一结束,请运行 ONLYOFFICE 文档,检查其能否正常工作。
第 5 步(可选):删除旧版 ONLYOFFICE 文档容器和映像
确保一切正常、更新后的 ONLYOFFICE Docs 版本正常运行后,您可以删除旧版的 ONLYOFFICE 文档容器:
sudo docker rm {{OLD_DOCUMENT_SERVER_CONTAINER_ID}}
其中 {{OLD_DOCUMENT_SERVER_CONTAINER_ID}} 代表“旧版”ONLYOFFICE 文档容器名或 ID。
如果您想释放空间,还可以删除旧的映像。显示所有 docker 映像:
sudo docker images -a
在映像列表中找到不需要的映像的 ID,并将其删除:
sudo docker rmi {{OLD_DOCUMENT_SERVER_IMAGE_ID}}
数据库架构在 v6.3 中已经更改。更新到 v6.3 时(如果您使用 Docker 版的 ONLYOFFICE 文档和外部数据库),您可能还需要升级数据库架构,以确保能够使用其密码保护功能。
1. 下载用于升级数据库架构的脚本。
- PostgreSQL:https://github.com/ONLYOFFICE/server/blob/develop/schema/postgresql/upgrade/upgradev630.sql
- MySQL:https://github.com/ONLYOFFICE/server/blob/develop/schema/mysql/upgrade/upgradev630.sql
2. 使用命令行执行脚本。
- PostgreSQL
psql -U onlyoffice -W onlyoffice < {path-to-upgradev630.sql}
- MySQL:
mysql -u root -p onlyoffice < {path-to-upgradev630.sql}
指定创建数据库时使用的密码(onlyoffice)。