Docker安装OnlyOffice

Docker 安装OnlyOffice

在这里插入图片描述

某本书里有一句话,等我去读、去拍案。

田间的野老,等我去了解、去惊识。

山风与发,冷泉与舌,

流云与眼,松涛与耳,

他们等着,在神秘的时间的两端等着,

等着相遇的一刹——

一旦相遇,就不一样了,永远不一样了。

张晓风 《我还有一片风景要完成》

官方最低配置:

CPU: 双核2GHz或更高

内存:大于2GB或更多

硬盘: 大于40GB

额外的需求至少4GB的交换

Docker版本:大于1.10

1.创建本地映射文件

mkdir /data/docker

2.docker启动Onlyoffice

docker run -itd \
--name onlyoffice \
--restart always \
-p 8090:80 \
-v /data/docker/onlyoffice/log:/var/log/onlyoffice  \
-v /data/docker/onlyoffice/data:/var/www/onlyoffice/Data  \
-v /data/docker/onlyoffice/lib:/var/lib/onlyoffice \
-v /data/docker/onlyoffice/db:/var/lib/postgresql  \
onlyoffice/documentserver

# docker ps

这条 Docker 命令用于运行 ONLYOFFICE Document Server 的容器。下面是对命令中各个参数的详细解释:

docker run

docker run 命令用于创建并运行一个新的容器。

-itd

  • -i (interactive): 让容器保持 STDIN 打开,即使没有附加终端。
  • -t (tty): 分配一个伪终端。
  • -d (detached): 让容器在后台运行,并返回容器 ID。

--name onlyoffice

指定容器的名称为 onlyoffice

--restart always

设置容器的重启策略为 “always”,即容器在退出时总是会自动重启。

-p 8090:80

将主机的 8090 端口映射到容器内的 80 端口。也就是说,通过访问 http://<主机IP>:8090 可以访问容器内的 ONLYOFFICE 服务。

-v /data/docker/onlyoffice/log:/var/log/onlyoffice

将主机上的 /data/docker/onlyoffice/log 目录挂载到容器内的 /var/log/onlyoffice 目录,用于存储 ONLYOFFICE 的日志文件。

-v /data/docker/onlyoffice/data:/var/www/onlyoffice/Data

将主机上的 /data/docker/onlyoffice/data 目录挂载到容器内的 /var/www/onlyoffice/Data 目录,用于存储 ONLYOFFICE 的数据文件。

-v /data/docker/onlyoffice/lib:/var/lib/onlyoffice

将主机上的 /data/docker/onlyoffice/lib 目录挂载到容器内的 /var/lib/onlyoffice 目录。

-v /data/docker/onlyoffice/db:/var/lib/postgresql

将主机上的 /data/docker/onlyoffice/db 目录挂载到容器内的 /var/lib/postgresql 目录,用于存储 PostgreSQL 数据库文件。

onlyoffice/documentserver

指定要运行的镜像名称为 onlyoffice/documentserver,这是 ONLYOFFICE Document Server 的官方 Docker 镜像。

这条命令通过 Docker 运行一个 ONLYOFFICE Document Server 容器,并将主机的多个目录挂载到容器内,以便持久化日志、数据和数据库文件,同时将容器的 80 端口映射到主机的 8090 端口。

这时候输入服务器ip:8090出现下面页面则部署成功

http://192.168.1.5:8090/

image-20220322150844771

3.测试Demo

docker exec onlyoffice sudo supervisorctl start ds:example

docker exec onlyoffice sudo sed 's,autostart=false,autostart=true,' -i /etc/supervisor/conf.d/ds-example.conf

这两条 Docker 命令用于管理在 onlyoffice 容器内的 supervisor 进程。supervisor 是一个进程控制系统,用于监控和控制进程的启动、停止等操作。

第一条命令

docker exec onlyoffice sudo supervisorctl start ds:example
  • docker exec: 在一个已经运行的容器中执行命令。
  • onlyoffice: 容器的名称,表示在这个容器中执行命令。
  • sudo: 以超级用户身份运行后续命令。
  • supervisorctl: supervisor 的命令行工具,用于控制 supervisor 中管理的进程。
  • start ds:example: 命令给 supervisorctl,表示启动名为 ds:example 的进程。

第二条命令

docker exec onlyoffice sudo sed 's,autostart=false,autostart=true,' -i /etc/supervisor/conf.d/ds-example.conf
  • docker exec: 在一个已经运行的容器中执行命令。
  • onlyoffice: 容器的名称,表示在这个容器中执行命令。
  • sudo: 以超级用户身份运行后续命令。
  • sed: 一个流编辑器,用于在文本中进行查找和替换操作。
  • 's,autostart=false,autostart=true,': sed 命令的查找替换部分。s 表示替换操作,autostart=false 是要查找的字符串,autostart=true 是要替换为的字符串。
  • -i /etc/supervisor/conf.d/ds-example.conf: -i 表示直接编辑文件并将结果写回文件,/etc/supervisor/conf.d/ds-example.conf 是要编辑的配置文件的路径。

总结:

  1. 第一条命令:在 onlyoffice 容器中,通过 supervisorctl 启动名为 ds:example 的进程。
  2. 第二条命令:在 onlyoffice 容器中,使用 sed 编辑 supervisor 的配置文件,将其中的 autostart=false 改为 autostart=true,以便在 supervisor 启动时自动启动 ds:example 进程。

image-20210930133757212

  • 21
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IT小辉同学

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值