ONLYOFFICE搭配云盘实现在线办公处理文档,高效好用

zakwu   ·   发表于 2020-7-11   ·   云计算应用

       平时我们电脑要安装office办公软件,有些远程的文档,或者邮件中的文件,要先下载到电脑然后,再进行编辑,完了再上传到服务器,或者邮件发送出去,对方才能收到。如果有了网盘+onlyoffice的组合,我们使用的逻辑变成了,无需下载文档,浏览器在线打开文档,编辑好,甚至多人协同编辑好一个文档,那如果有需要文档的人,只需登陆网盘就可以看到了。这样一来我们的工作效率大大提升,完全改变了我们的办公逻辑,而且我们随时随地使用各种终端都可以,想想是不是很心动!

       那今天小编介绍一下onlyoffice是什么软件吧?这样,有一个概念帮助你好理解。


       OnlyOffice是一款小巧专业的桌面文档管理工具。OnlyOffice官方版功能强悍,便捷好用,是非常实用的文档编辑器,可以帮助用户在线创建、编辑、协作文档,不用担心任何无用的插件,放心去用。100%与Microsoft Office格式兼容。软件使用HTML5的Canvas元素构建,将谷歌的在线协作能力与微软word的高质量格式结合,是一款功能非常丰富的网络办公套件。


        这么好,如何使用呢?


        首先我们要安装一个网盘系统到你的云主机当中,国外流行的ownCloud,Nextcloud都可以配合使用,国内的话就是Dzzoffice,设置很简单,只需要把ONLYOFFICE Document Server安装到服务器,得到一条API调取链接,在云盘插件设置里面填进去保存即可。如图所示(Dzzoffice插件后台)

        点开设置,填好链接即可。


        ownCloud,Nextcloud,Dzzoffice这些网盘系统如何安装呢?这个我之前讲过可视化面板宝塔的使用,用这个面板可以非常简单地安装部署云盘系统网站,这里就不再多说了。如果大家想知道,我再抽时间写一篇部署云盘系统的文章。


        接下来我要讲如果使用Docker部署ONLYOFFICE Document Server来调用OnlyOffice的文档功能。 很多人要问了,Docker是什么鬼?好高深啊。


        好吧,那先解释一下Docker到底是什么鬼?

       Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。


       好吧估计你也看不懂这个解释,说白了,Docker就像下面一张图所表达的,就是能装很多很多东西,能很快部署业务系统:

      还是进入正题来说吧,等你看过之后,就会发现这个东西其实很简单的。就是一个好用的工具而已。



第一步:部署环境


      首先要说一下你的云主机配置,这一点也还是很重要的,OnlyOffice对云主机的要求还是比较高的,比较占用内存。如果配置太低,使用就很卡,体验不好。这里推荐如下配置:


     RAM: 4 GB+

     CPU: 双核 2 GHz +

     Swap: 至少2 GB

     HDD: 至少有2GB的剩余空间

     系统要求: RedHat 64bit,CentOS类、Debian类的内核版本3.8以上。

     Docker: 1.9.0版本及以上 如何查看Docker版本?


     SSH登陆你的云主机后使用这一条命令:


     uname -r


     宝塔面板用户可以在宝塔的应用商店点击安装Docker,无需输入命令。如果你没有用宝塔面板,想自行安装Docker也很简单,执行如下命令即可:


      CentOS/RedHat/Fedora


      使用yum命令安装Docker:


      yum install docker -y


      启动Docker服务:


      systemctl start docker

    

      Debian/Ubuntu 使用apt命令安装Docker:


      sudo apt-get install docker.io


      Docker服务会自动启动 好了,Docker安装启动后,我们需要把ONLYOFFICE Document Server 的Docker镜像拉取到云主机里面去,使用如下的命令:


      sudo docker pull onlyoffice/documentserver


      如图所示:


      国内主机从Docker Hub拉取镜像的话可能会比较慢,可以尝试类似阿里云、Daocloud的加速器。


      拉取完成,如下图所示:

      看到complete说明成功了。


第二部:映射端口


      启动Docker容器当中的Document Server镜像,并映射80端口至本地。使用这一条命令:


      sudo docker run -i -t -d -p 80:80 onlyoffice/documentserver


      如下图所示:

       看到命令下面一串数字字母说明映射成功;如果80被使用了,这条命令会报错,这个时候我们要用其他的端口。因为80端口上往往会运行像Apache、Nginx之类的HTTP服务,为了避免端口冲突,我们可以将Document Server映射至其它端口。

       例如映射至9000端口:


        sudo docker run -i -t -d -p 9000:80 onlyoffice/documentserver


        如下图所示:

       如何验证你映射的80或者9000能访问呢?


       很简单,ip:80或者ip:9000在浏览器访问,能看下如下图的状态就说明是成功的:


Tips:

       你如果选择9000端口,一定记住要先去云主机的安全组当中开启这个端口,要不也会失败。


第三步:云盘设置


       其实到这里,OnlyOffice就安装完毕了。这时把链接放入云盘插件里就能访问了,效果如图:

Dzzoffice后台插件设置如下:


      (填写您的onlyoffice Document Server API地址,如:http://IP:9000/web-apps/apps/api/documents/api.js 或 http://IP:9000/OfficeWeb/apps/api/documents/api.js 根据你的文档服务器填写)

       提交保存后。


       至此设置完毕,你就能直接打开云盘里的word,xls表,ppt,pdf等等文件,不仅可以在线预览,还能在线协同编辑。


       是不是非常强大,非常方便,哈哈!


第四步:高级进阶


       不过最后要补充一些东西:(为了能更好使用onlyoffice) Document Server的数据在容器中的储存位置如下:


      /var/log/onlyoffice(存放ONLYOFFICE Document Server日志目录位置)

      /var/www/onlyoffice/Data(存放证书文件目录位置) 你可以用如下命令:


      sudo docker -exec -it onlyoffice/documentserver /bin/bash 登入容器,也可以将以上两个目录映射到本地,这样打开文件更方便。


       创建目录:


       mkdir -p /app/onlyoffice/DocumentServer/logs mkdir -p /app/onlyoffice/DocumentServer/data


       使用如下命令将目录映射至本地:


       sudo docker run -i -t -d -p 80:80 \ -v /app/onlyoffice/DocumentServer/logs:/var/log/onlyoffice \ -v /app/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data onlyoffice/documentserver


        这样,直接访问本地/app/onlyoffice/DocumentServer/下的两个文件夹就可以更加快捷。


        另外,为了文件传输的安全,我们要使用443,https协议去访问文件,下面就说下如何得到安全链接吧:


        启用HTTPS需要使用SSL证书,购买外面商业公司的证书价格也是很贵的,如果自己公司用使用,也可以自己签发ca机构签发的证书的,加密效果相同。


        如何制作证书呢?如下教程告诉你:


      (SSH登录云主机,按照如下8个步骤就能自行获得加密证书了)


        1. 创建私钥 openssl genrsa -out onlyoffice.key 2048


        2. 创建CSR openssl req -new -key onlyoffice.key -out onlyoffice.csr


        3. 用私枂和CSR签发证书 openssl x509 -req -days 365 -in onlyoffice.csr -signkey onlyoffice.key -out onlyoffice.crt

 

        4. 用dhparam加密服务器密钥 openssl dhparam -out dhparam.pem 2048 6.创建相应目录: mkdir -p /app/onlyoffice/DocumentServer/data/certs


        5.复制证书到/app/onlyoffice/DocumentServer/data/certs(不会命令可以登录宝塔面板找到证书文件复制到指定文件夹下) cp onlyoffice.key /app/onlyoffice/DocumentServer/data/certs/ cp onlyoffice.crt /app/onlyoffice/DocumentServer/data/certs/ cp dhparam.pem /app/onlyoffice/DocumentServer/data/certs/


        6.目录并设置权限: chmod 400 /app/onlyoffice/DocumentServer/data/certs/onlyoffice.key


        运行容器,映射容器的443端口和Data目录至本地:


        sudo docker run -i -t -d -p 443:443 \ -v /app/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data onlyoffice/documentserver

如下图所示:

      在浏览器里访问https://IP。(CentOS/RHEL/Fedora系统可能无法访问,请往下看)

      当然了,如果本地443端口已经被占用了的话,可以映射至其它端口:


      sudo docker run -i -t -d -p 9000:443 \ -v /app/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data onlyoffice/documentserver


     但是仍然是要用HTTPS协议访问,比如:https://IP:9000/


Tips:

 

       这里有个小小的提示告诉大家CentOS/RHEL/Fedora无法访问这是由于SELinux的阻止,不过你如果是宝塔面板,可以不用去在意这一条提示。


       暂时关闭SELinux(重启后失效)用如下命令:


       setenforce 0

       好了,终于完成onlyoffice的部署了,看上去是有点复杂,比较硬核。当然你不使用SSL加密访问,前面一大半就可以完成工作了。我这里讲得有点细,你可以反复去练习,如果有问题可以给我留言询问怎么办。因为我一直自己在用onlyoffice,感觉这个在线编辑确实很强大,所以推荐给你们来用。

打赏我,让我更有动力~

0 条回复   |  直到 2020-7-11 | 1826 次浏览
登录后才可发表内容
每日签到
连续签到0天