参考:
Docker 安装配置 OnlyOffice
Installing ONLYOFFICE Docs for Docker on a local server
步骤 1:拉取 OnlyOffice Docker 镜像
首先,使用以下命令从 Docker Hub 拉取 OnlyOffice Document Server 镜像:
sudo docker pull onlyoffice/documentserver
步骤 2:运行 OnlyOffice Docker 容器
创建挂载目录
为了实现数据持久化,需要提前创建 OnlyOffice Document Server 的数据、日志、库文件以及 PostgreSQL 数据库的存储目录。执行以下命令创建这些目录:
sudo mkdir -p /app/onlyoffice/DocumentServer/logs
sudo mkdir -p /app/onlyoffice/DocumentServer/data
sudo mkdir -p /app/onlyoffice/DocumentServer/lib
sudo mkdir -p /app/onlyoffice/DocumentServer/db
启动 Docker 容器
接下来,运行以下命令以创建和启动 OnlyOffice Docker 容器,并设置必要的卷(volumes):
sudo docker run -i -t -d -p 8088:80 --restart=always -e JWT_ENABLED=false -e ALLOW_META_IP_ADDRESS=true -e ALLOW_PRIVATE_IP_ADDRESS=true \-v /app/onlyoffice/DocumentServer/logs:/var/log/onlyoffice \-v /app/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data \-v /app/onlyoffice/DocumentServer/lib:/var/lib/onlyoffice \-v /app/onlyoffice/DocumentServer/db:/var/lib/postgresql \--name onlyoffice \onlyoffice/documentserver
上述Docker
命令的参数解释如下:
-
-i -t -d
:这是一组组合标志,具体含义如下:-i
:保持容器的标准输入流(stdin)打开。-t
:为容器分配一个伪终端(pseudo-TTY)。-d
:在后台以守护进程模式运行容器。
-
-e JWT_ENABLED=false
:禁用JWT
(JSON Web Token)验证。如果准备启用,则不需要该参数,同时建议使用-e JWT_SECRET=my_jwt_secret
显式指定,防止重启时失效。 -
-e ALLOW_META_IP_ADDRESS=true
:允许连接 meta IP 地址。 -
-e ALLOW_PRIVATE_IP_ADDRESS=true
:允许连接私有 IP 地址。 -
-p 8088:80
:将主机的8088
端口映射到容器的80
端口。通过主机的8088
端口即可访问OnlyOffice Document Server
。 -
--restart=always
:配置容器在退出时自动重启,以确保OnlyOffice Document Server
持续可用。 -
-v /app/onlyoffice/DocumentServer/logs:/var/log/onlyoffice
:将主机的
/app/onlyoffice/DocumentServer/logs
目录挂载到容器内的/var/log/onlyoffice
,用于持久化存储OnlyOffice Document Server
的日志文件。 -
-v /app/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data
:将主机的
/app/onlyoffice/DocumentServer/data
目录挂载到容器内的/var/www/onlyoffice/Data
,用于持久化存储OnlyOffice Document Server
的数据。 -
-v /app/onlyoffice/DocumentServer/lib:/var/lib/onlyoffice
:将主机的
/app/onlyoffice/DocumentServer/lib
目录挂载到容器内的/var/lib/onlyoffice
,用于持久化存储OnlyOffice Document Server
的库文件。 -
-v /app/onlyoffice/DocumentServer/db:/var/lib/postgresql
:将主机的
/app/onlyoffice/DocumentServer/db
目录挂载到容器内的/var/lib/postgresql
,用于持久化存储OnlyOffice Document Server
的PostgreSQL
数据库。 -
--name onlyoffice
:将容器命名为onlyoffice
,方便后续管理和引用。 -
onlyoffice/documentserver
:指定要运行的Docker
镜像,即onlyoffice/documentserver
。
通过执行此Docker
命令,即可启动包含OnlyOffice Document Server
的容器,并配置相应的挂载卷等参数。可以通过访问http://ip:8088
(注意防火墙)来验证安装是否成功。