一、前言
因业务需求觉得文档不能只有下载要加上在线预览更方便(好家伙 八百里加急 ) onlyoffice之前的确没了解过,是同事给了提示,直接入坑
二、docker安装部署onlyoffice
- 安装 拉取onlyoffice镜像 (注意指定版本 自己可以查一下哪个版本稳定 切勿盲目docker pull onlyoffice/documentserver 你懂的😁 )
docker pull onlyoffice/documentserver:7.4.0.1
- 运行 这里根据官网来就好了 因为我是测试这里就直接给false
docker run -i -t -d -p 9631:80 --restart=always -e JWT_ENABLED=false onlyoffice/documentserver
- 这里我们在浏览器输入自己的ip加端口 看到下面这个页面就是启动成功了
- 想要测试的话 按上图的集成前测试(Testing before integration)操作就可以测试了如下图:
- 后端服务启动成功后 前端就可以引入指定js进行后续操作了
- 其他的就是前后端交互测试了 可参考官网信息 这里我是简单的测试 只是预览不涉及编辑
三、踩坑
- 第一坑:令牌无效
我遇到预览文件时显示令牌无效,原因启动的时候没有设定 -e JWT_ENABLED=false 或者是没有生效 可以进容器内查看一下 docker exec -it CONTAINER ID /bin/bash 到这个 /etc/onlyoffice/documentserver目录下查看local.json 可以在这进行配置修改 然后保存重启
执行 upervisorctl restart all
- 第二坑: 限制ip访问 在 /etc/onlyoffice/documentserver目录下default.json 因为当时刚入坑的时候用了很多版本 其中一个就会指定限制访问ip 我们可以在这里自行配置 然后保存重启
- supervisorctl restart all
-
- 第三坑:pdf文件无法显示字体 (当时使用的是6点几的版本 记不清了) pdf预览文件没有任何字体显示 然后查了相关资料发现是版本不同字体字号可能都会有出入 需要手动添加字体
可以从window下找到字体文件夹 上传到远程替换 容器中 /usr/share/fonts/ 目录下
还有字号的相关替换 后期出一个完整的关于字体字号的替换 当然也可自行谷歌百度 如果觉得麻烦可以尝试更换版本
如遇到其他问题可查看onlyofffice的日志
cd /var/log/onlyoffice/documentserver/converter cat out.log
总结
这些都算一个小白的踩坑吧,还是和个人有关系其实大部分故障官网都有说明 建议使用docker-compose 这个没啥说的简单方便还实用 下面贴一下我的docker-compose.yml
vbnet
version: '3'
services:
onlyoffice:
image: onlyoffice/documentserver
container_name: onlyoffice
environment:
TZ: 'Asia/Shanghai'
JWT_ENABLED: 'false'
ports:
- '9631:80'
volumes:
- './logs:/var/log/onlyoffice'
- './data:/var/www/onlyoffice/Data'
- './lib:/var/lib/onlyoffice'
- './db:/var/lib/postgresql'
#- './config:/etc/onlyoffice/documentserver'
#- './config/default.json:/etc/onlyoffice/documentserver/default.json'
# - './config/local.json:/etc/onlyoffice/documentserver/local.json'
更新启动
docker-compose up -d