OnlyOffice 安装部署文档
OnlyOffice介绍
ONLYOFFICE Docs 是一个在线办公套件,包括文本、电子表格和演示文稿的查看器和编辑器,完全兼容 Office Open XML 格式:.docx、.xlsx、.pptx,并支持实时协作编辑。
功能性
- 文档编辑器
- 电子表格编辑器
- 演示文稿编辑器
- 移动网络查看器
- 协作编辑
- 象形文字支持
- 支持所有流行的格式:DOC,DOCX,TXT,ODT,RTF,ODP,EPUB,ODS,XLS,XLSX,CSV,PPTX,HTML
系统要求
- CPU双核 2 GHz 或更高
- 内存 2 GB 或更多
- 硬盘 至少 40 GB 可用空间
- 至少 4 GB 交换的额外要求
- 操作系统RHEL 7 或 CentOS 7
- Docker:版本 1.9.0 或更高版本
Docker离线部署
2.1 安装包下载
下载地址:https://download.docker.com/linux/static/stable (opens in a new tab)
选择对应版本下载,这里选择的是x86_64架构 docker-23.0.0.tgz。
2.2 docker安装
上传docker-23.0.0.tgz到安装目录。
解压
tar -xzvf docker-23.0.0.tgz将解压后的文件夹 复制到 usr/bin 下
cp docker/* /usr/bin/在 /etc/systemd/system 目录下创建 docker.service 文件
vim /etc/systemd/system/docker.service并添加如下内容:
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target
[Service]
Type=notify
# the default is not to use systemd for cgroups because the delegate issues still
# exists and systemd currently does not support the cgroup feature set required
# for containers run by docker
ExecStart=/usr/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
# Having non-zero Limit*s causes performance problems due to accounting overhead
# in the kernel. We recommend using cgroups to do container-local accounting.
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
# Uncomment TasksMax if your systemd version supports it.
# Only systemd 226 and above support this version.
#TasksMax=infinity
TimeoutStartSec=0
# set delegate yes so that systemd does not reset the cgroups of docker containers
Delegate=yes
# kill only the docker process, not all processes in the cgroup
KillMode=process
# restart the docker process if it exits prematurely
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s
[Install]
WantedBy=multi-user.target添加文件执行权限
chmod +x /etc/systemd/system/docker.service重载unit配置文件
systemctl daemon-reload启动docker
systemctl start docker docker 服务开机自启动命令
systemctl enable docker.service 验证查询docker版本
docker -v2.3 docker卸载
删除dockers.service
rm -f /etc/systemd/system/docker.service删除文件
rm -f /usr/bin/containerd
rm -f /usr/bin/containerd-shim
rm -f /usr/bin/containerd-shim-runc-v2
rm -f /usr/bin/ctr
rm -f /usr/bin/docker
rm -f /usr/bin/dockerd
rm -f /usr/bin/docker-init
rm -f /usr/bin/docker-proxy
rm -f /usr/bin/runc重新加载配置文件
systemctl daemon-reloadOnlyOffice安装
OnlyOffice镜像拉取(可联网)
拉取 审友 OnlyOffice 最新镜像(该镜像经过部分处理,可以无需初始化及配置,直接使用)
docker pull hub.yonyouaud.com/a8/onlyoffice/documentserver:7.1如果使用
官方镜像,请拉取 onlyoffice/documentserver (opens in a new tab) 镜像,并根据其说明完成容器启动及配置
OnlyOffice镜像拉取(无法联网)
在可以联网的服务器上执行docker pull命令下载镜像
拉取最新
docker pull hub.yonyouaud.com/a8/onlyoffice/documentserver:7.1运行 docker save 命令将镜像保存为 tar 归档文件
docker save -o /home/onlyoffice.tar hub.yonyouaud.com/a8/onlyoffice/documentserver:7.1将 tar 归档文件拷贝到内网服务器
scp …
导入镜像
docker load -i onlyoffice.tar可以联系
公共研发中心获取镜像onlyoffice.tar文件
运行 docker 镜像
- 直接运行镜像(此处用第 2 步)
docker run -d -p 9006:80 --name onlyoffice --restart=always onlyoffice/documentserver如果您希望单独安装 ONLYOFFICE 文档服务器,请使用此命令。
- 配置
docker镜像存储数据
所有数据都存储在专门指定的目录,数据卷,在以下位置:
- /var/log/onlyoffice 用于 ONLYOFFICE 文档服务器日志
- /var/www/onlyoffice/Data
- /var/lib/onlyoffice 用于文件缓存
- /var/lib/postgresql 对于数据库
要从容器外部访问您的数据,您需要安装卷。可以通过在 docker run 命令中指定 -v 选项来完成
docker run -d -p 9006:80 --name onlyoffice --restart=always \
-v /data/onlyoffice/DocumentServer/logs:/var/log/onlyoffice \
-v /data/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data \
-v /data/onlyoffice/DocumentServer/lib:/var/lib/onlyoffice \
-v /data/onlyoffice/DocumentServer/db:/var/lib/postgresql onlyoffice/documentserver- 创建目录(如果需要挂接到容器外)
mkdir -p /data/onlyoffice/DocumentServer/{logs,data,lib,db}注:如果您尝试安装尚未创建的文件夹,则会创建这些文件夹,但对它们的访问将受到限制。您将需要手动更改他们的访问权限。
- 路由配置
在 nginx 配置文件中添加如下配置,解决跨域问题。
下面例子中,OnlyOffice 部署地址为: http://10.2.112.24:9006
server {
listen 80;
server_name demo10.yonyouaud.com;
server_tokens off;
location /example/ {
proxy_pass http://10.2.112.24:9006/example/;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $proxy_connection;
proxy_set_header X-Forwarded-Host $the_host;
proxy_set_header X-Forwarded-Proto $the_scheme;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location /web-apps/ {
proxy_pass http://10.2.112.24:9006/web-apps/;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $proxy_connection;
proxy_set_header X-Forwarded-Host $the_host;
proxy_set_header X-Forwarded-Proto $the_scheme;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location /7.2.1-34/ {
proxy_pass http://10.2.112.24:9006/7.2.1-34/;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $proxy_connection;
proxy_set_header X-Forwarded-Host $the_host;
proxy_set_header X-Forwarded-Proto $the_scheme;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location /cache/ {
proxy_pass http://10.2.112.24:9006/cache/;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $proxy_connection;
proxy_set_header X-Forwarded-Host $the_host;
proxy_set_header X-Forwarded-Proto $the_scheme;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location / {
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_pass http://a8-platform/;
proxy_set_header X-Forwarded-Host $the_host;
proxy_set_header X-Forwarded-Proto $the_scheme;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}OnlyOffice镜像
建议采用审友封装好的镜像: hub.yonyouaud.com/a8/onlyoffice/documentserver:7.1
- 端口映射:镜像默认开启
80端口,可以在docker run命令中指定-p选项来进行宿主端口映射
在浏览器输入:http://服务器地址:9006