赞
踩
初次接触Office文档在线编辑,自己琢磨了一天搞出来的。
yum install docker -y
sudo docker pull onlyoffice/documentserver
启动Document Server镜像,并映射80端口至本地。
systemctl start docker
启动OnlyOffice镜像
sudo docker run -i -t -d -p 80:80 onlyoffice/documentserver
映射到9000端口
sudo docker run -i -t -d -p 9000:80 onlyoffice/documentserver
测试OnlyOffice服务
http://onlyoffice-service-url 例:http://192.168.0.190:9000
demo:https://gitee.com/liuchao_112403/OnlyOfficeDemo
修改必要的参数
"callbackUrl":"http://192.168.0.105:8081/CallBackServlet?"+"fileName=<%= Model.document.title %>",
配置正确的CallBackServlet地址
maven package
部署服务器
target -> *******.war包 拷贝至 tomcat_home/webapps下
运行测试
http://192.168.0.105:8081
Docker默认使用国外镜像地址,下载镜像的速度慢且成功率低,修改到阿里云镜像地址,速度很快,且成功率极高。
修改docker镜像
/etc/docker/deamon.json
"registry-mirrors": ["https://***.mirror.aliyuncs.com"]
镜像地址可以通过阿里云申请获取
Maven默认使用国外镜像地址,下载镜像的速度慢,修改到国内镜像地址,速度极快。
/usr/local/maven/conf/settings.xml,mirrosr标签内增加以下mirror
···
<!-- 阿里云仓库 --> <mirror> <id>alimaven</id> <mirrorOf>central</mirrorOf> <name>aliyun maven</name> <url>http://maven.aliyun.com/nexus/content/repositories/central/</url> </mirror> <!-- 中央仓库1 --> <mirror> <id>repo1</id> <mirrorOf>central</mirrorOf> <name>Human Readable Name for this Mirror.</name> <url>http://repo1.maven.org/maven2/</url> </mirror> <!-- 中央仓库2 --> <mirror> <id>repo2</id> <mirrorOf>central</mirrorOf> <name>Human Readable Name for this Mirror.</name> <url>http://repo2.maven.org/maven2/</url> </mirror> <!-- mirror | Specifies a repository mirror site to use instead of a given repository. The repository that | this mirror serves has an ID that matches the mirrorOf element of this mirror. IDs are used | for inheritance and direct lookup purposes, and must be unique across the set of mirrors. <mirror> <id>mirrorId</id> <mirrorOf>repositoryId</mirrorOf> <name>Human Readable Name for this Mirror.</name> <url>http://my.repository.com/repo/path</url> </mirror>
···
主要是因为url或者callbackUrl路径不正确。
callbackUrl可以写一个回调方法,将文件保存到自己想保存的位置,我是写了一个CallBackServlet,保存到本地硬盘,具体存到哪里可根据业务需求,也可以配置专门的文件服务器。
检查Docker内的OnlyOffice服务是否可以与宿主机器互通,是否与外网互通。
(1)Docker无法访问外网
$ sudo service docker stop $ sudo pkill docker $ sudo iptables -t nat
-F $ sudo ifconfig docker0 down $ sudo brctl delbr docker0 $ sudo service docker start
(2)外网无法访问宿主机器或Docker
方法一:开放端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
方法二:关闭防火墙
systemctl stop firewalld.service
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。