老婆出轨 发表于 2024-8-31 04:38:48

docker快速安装onlyoffice

一、下载镜像
docker pull onlyoffice/documentserver
二、#创建挂载目录
cd /usr/local && mkdir onlyoffice && cd onlyoffice && mkdir logs data lib db
三、启动容器
docker run -i -t -d -p 9898:80 --name onlyoffice --restart=always -e TZ="Asia/Shanghai" \
-v /usr/local/onlyoffice/logs:/var/log/onlyoffice \
-v /usr/local/onlyoffice/data:/var/www/onlyoffice/Data \
-v /usr/local/onlyoffice/lib:/var/lib/onlyoffice \
-v /usr/local/onlyoffice/db:/var/lib/postgresql \
-e JWT_ENABLED=false onlyoffice/documentserver:latest

(可选)如果需要开启jwt验证用户,则使用下面的命令
docker run -i -t -d -p 9898:80 --name onlyoffice --restart=always -e TZ="Asia/Shanghai" \
-v /usr/local/onlyoffice/logs:/var/log/onlyoffice \
-v /usr/local/onlyoffice/data:/var/www/onlyoffice/Data \
-v /usr/local/onlyoffice/lib:/var/lib/onlyoffice \
-v /usr/local/onlyoffice/db:/var/lib/postgresql \
-e JWT_ENABLED=true \
-e JWT_SECRET=wclflow \
-e JWT_HEADER=token \
onlyoffice/documentserver:latest
https://i-blog.csdnimg.cn/direct/29baec89eb2c4ef789f95c87fc98777f.png
如果开启jwtsecret,则通过以下命令,检察jwtsecret是否生效
docker exec onlyoffice /var/www/onlyoffice/documentserver/npm/json -f /etc/onlyoffice/documentserver/local.json 'services.CoAuthoring.secret.session.string' https://i-blog.csdnimg.cn/direct/40490bcd5ea94090b43ad67ba3173d90.png
四、查抄是否安装成功,访问web页面 (如果访问不了,防火墙放行端口,或测试情况下直接关闭防火墙)
http://容器地点主机IP:9898/welcome/
https://img-blog.csdnimg.cn/direct/4ec8f528db7d48de8e52511ca4630dea.png
出现上图,则表示onlyoffice服务安装成功
五、写一个测试的html,代码如下:
看下面的代码,有说明的地方,是你需要改动的地方。
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <!-- 此处的ip,我onlyoffice所在的机器ip是192.168.7.46,你要改成你自己的服务IP -->
    <script src="http://192.168.7.46:9898/web-apps/apps/api/documents/api.js"></script>
</head>
<body style="margin:0px;padding:0px;">
    <div id="placeholder" class = "nav" style="width:100%;height:100%;min-height:900px;"></div>
</body>
<script>
    new DocsAPI.DocEditor("placeholder", {
      "document": {
            "fileType": "docx", //文件类型,我用的docx文件,你可以根据需要改其他格式等
            "key": "12qNAFE", //文件key,确保唯一就行
            "title": "aaa测试.docx", //文件名称
            "url": "http://192.168.2.67:8888/group1/M00/03/38/wKgCQ2aGTaCAMYg8AAAoaT_K4_U80.docx" //文件地址,你可以根据需要改其他地址,前提是本地或外网能够访问的到
      },

      "documentType": "word",//文件类型,上面的fileType进行对应匹配
      "type": "desktop",
      "width": "100%",
      "height": "900px",
      "editorConfig": {
            "callbackUrl": ""
      },
      "permissions": {
            "edit": false,
            "comment": true,
            "download": true,
            "fillForms": true,
            "print": true,
            "review": true
      },
      "token":"如果你开启了jwt验证,则这里必须填写jwttoken,jwttoken最好由后台提供,后台具体怎么生成jwttoken,百度一下"
    });
</script>
</html>
六、在浏览器里运行上面的html文件
https://img-blog.csdnimg.cn/direct/313de63417b94d6f88d3e040d01acd50.png
恭喜,可以在线检察、编辑、下载文件了,完事!详细尚有其他需求或疑问,请查阅官方文档,地点是Language-specific examples - ONLYOFFICE Api Documentation
七、如果你开启了jwt,则需要在五步的html里的config里配置token.,否则无法加载文件,会提示下面的错误:
https://i-blog.csdnimg.cn/direct/ceae7f858f2c4c28894de365dfb7f53a.png
八、(可选)使用集成测试示例(一个简单的文档管理系统)来查抄编辑器是否正常运行,如图所示
https://i-blog.csdnimg.cn/direct/57dab2bbc338436caa4f76f32288e1d2.png
输入两条命令即可:


[*] 启动测试示例
sudo docker exec onlyoffice sudo supervisorctl start ds:example
[*] 将其添加到自动启动中
sudo docker exec onlyoffice sudo sed 's,autostart=false,autostart=true,' -i /etc/supervisor/conf.d/ds-example.conf
实行上述两条命令后,点击按钮进入测试示例背景文档管理系统
https://i-blog.csdnimg.cn/direct/12c59d95b91244a9a71bd2e16b15eb41.png

常见问题:


[*]提示下载失败
https://i-blog.csdnimg.cn/direct/9e5e1899c0ab493e871da1cec0f3eb79.png问题定位:使用内部ip地点访问后端服务
解决方式:需要编辑配置文件允许私有ip通过
进入onlyoffice容器,然后编辑/etc/onlyoffice/documentserver/default.json​,
搜索并修改以下字段为true:
"request-filtering-agent" : {
"allowPrivateIPAddress": true,
"allowMetaIPAddress": true
},
末了退出容器,然后重启容器后就好了

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: docker快速安装onlyoffice