更新适用于 Docker 的 ONLYOFFICE 文档企业版到最新版本
介绍
本指南将向您展示如何将 ONLYOFFICE 文档 企业版 Docker 版本更新到最新版本。
我们的支持政策是仅支持最新的稳定版本。我们定期发布新的 ONLYOFFICE 文档版本,其中包括新功能和错误修复。如果您使用的是旧版本的 ONLYOFFICE 文档,我们建议您升级到最新版本。
如果您使用的是旧的集成版,唯一的更新方法是卸载集成版(onlyoffice/documentserver-ie)并安装企业版。
在更新之前,请确保您的 Docker 版本符合系统要求(任何由 Docker 团队支持的版本)。
关闭 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 分钟)。
更新 ONLYOFFICE 文档 Docker 版
使用脚本更新
如果您的 ONLYOFFICE 文档版本是使用脚本安装的,请执行以下命令:
bash docs-enterprise-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: 停止当前的 ONLYOFFICE 文档 Docker 容器。
sudo docker stop {{DOCUMENT_SERVER_ID}}
步骤 3: 下载最新的 ONLYOFFICE 文档镜像
下载最新的 ONLYOFFICE 文档镜像,指定 latest 标签:
docker pull onlyoffice/documentserver-ee:latest
步骤 4: 使用相同的映射路径运行新镜像
sudo docker run -i -t -d -p 80:80 --restart=always \
-v /host_folder:/volume \
-e JWT_SECRET=my_jwt_secret onlyoffice/documentserver-ee
确保您运行新镜像时的文件夹路径映射完全与之前版本挂载时相同,否则这些文件夹中存储的数据将不会被自动识别。为此,请指定 -v 选项参数,将 /host_folder:/volume 值替换为在步骤 1 中显示的实际路径。
如果您之前使用不同的端口或 HTTPS 安装了旧版本,并希望以相同方式安装新版本,请参考安装说明以找到必要的命令。
安装过程完成后,运行 ONLYOFFICE 文档并检查其是否正常工作。
步骤 5(可选): 移除旧的 ONLYOFFICE 文档容器和镜像
在确认一切正常并且更新后的 ONLYOFFICE 文档版本正常工作后,您可以移除旧的 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 文档),您可能还需要升级数据库架构以确保能够使用密码保护功能。
-
在 ONLYOFFICE Docs 容器中找到用于升级数据库架构的脚本。
- 对于 PostgreSQL:
/var/www/onlyoffice/documentserver/server/schema/postgresql/upgrade/upgradev630.sql - 对于 MySQL:
/var/www/onlyoffice/documentserver/server/schema/mysql/upgrade/upgradev630.sql
- 对于 PostgreSQL:
-
使用命令行执行脚本。
- 对于 PostgreSQL:
psql -U onlyoffice -W onlyoffice < {path-to-upgradev630.sql} - 对于 MySQL:
mysql -u root -p onlyoffice < {path-to-upgradev630.sql}
指定创建数据库时使用的密码(
onlyoffice)。 - 对于 PostgreSQL: