docker搭建onlyoffice及使用

这篇具有很好参考价值的文章主要介绍了docker搭建onlyoffice及使用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

centos8.5安装docker

  1. 安装

yum install -y docker

  1. 检测 Docker 是否安装成功

yum list installed | grep docker

  1. 设置开机自启

systemctl enable docker

  1. 启动

systemctl start docker

  1. 查看版本

docker -v

docker安装onlyoffice

  1. 拉取镜像pull OnlyOffice,建议指定版本号,其他版本在项目中可能遇到问题。
sudo docker pull onlyoffice/documentserver:7.3
  1. 运行

将本机的9000端口映射到docker的80端口上,访问时通过服务器ip:9000访问,并且用 -v 将本机机==/home/onlyOffice==文件夹挂载到docker的 /var/www/onlyoffice/documentserver/web-apps/wsData文件下,后续直接通过http请求读取对应的文件夹。JWT_SECRET填写自己定义的密钥,JWT_ENABLED设置为true开启token验证。

方式一:指定密钥和开启token

docker run -i -t -d -p 9000:80 -v /home/myOnlyOffice:/var/www/onlyoffice/documentserver/web-apps/wsData --env JWT_SECRET=VI71S3cGtXg96HgFWzQhblz1KwMc1Jzk -e JWT_ENABLED=true onlyoffice/documentserver:7.3

方式二:

docker run -i -t -d -p 9000:80 -v /home/myOnlyOffice:/var/www/onlyoffice/documentserver/web-apps/wsData onlyoffice/documentserver:7.3

推荐方式一,方式二可能出现重启服务后配置文件重置导致无法设置secret密钥的情况。

  1. 测试OnlyOffice服务

访问网址:http://172.17.0.1:9000/example/,需要以IP加端口方式访问,不能用localhost访问。

  1. 执行以下命令

根据http://172.17.0.1:9000页面上的提示,执行以下命令

sudo docker exec 856d790c064b sudo supervisorctl start ds:example

sudo docker exec 856d790c064b sudo sed 's,autostart=false,autostart=true,' -i /etc/supervisor/conf.d/ds-example.conf

  1. 若提示文档不能被保存,则关闭防火墙后重启docker,然后启动onlyoffice即可。
  1. 若提示安全令牌不正确,则使用以下命令检查secret密钥是否配置:

sudo docker exec 856d790c064b /var/www/onlyoffice/documentserver/npm/json -f /etc/onlyoffice/documentserver/local.json 'services.CoAuthoring.secret.session.string'

如果配置了则会显示密钥。

  1. 查看OnlyOffice版本号

使用服务器ip 访问onlyoffice,docker,容器,word

参考文档:

Docker安装实践(超简单) + 安装OnlyOffice_onlyoffice docker-CSDN博客

linux安装natapp映射工具

在本地电脑安装虚拟机,在虚拟机上安装centos后。由于本地电脑暂时不能连接网线只能连接wifi,尝试了各种网络适配器的连接方式,本地电脑均不能连接虚拟机上的linux(本地电脑和虚拟机上的linux不在同一个网段),但是虚拟机上的linux可以ping通本地电脑和外网IP,所以通过natapp外网映射工具作为中间桥梁让本地电脑连接到虚拟机上的IP和端口用来测试onlyOffice。natapp的部署流程如下:

  1. 注册natapp并配置ip和端口;
  2. 在官网NATAPP-内网穿透 基于ngrok的国内高速内网映射工具下载linux版的客户端,将客户端文件(natapp)放在/download目录下;
  3. 给该客户端文件授权可执行的权限:chmod u+x natapp ;
  4. 执行命令启动客户端:./natapp -authtoken=XXXX
  5. 启动后,控制台会显示生成的外网地址,通过外网访问该地址即可访问到该linux的IP和配置的端口。

启动:/download目录下执行:./natapp -authtoken=32f063241bc276d1

安装字体和修改字号

安装字体:

  1. 准备字体文件
  • 复制c:\windows\fonts文件夹中想要安装的字体,如“仿宋 常规”

使用服务器ip 访问onlyoffice,docker,容器,word

  • 粘贴到新建的“仿宋 常规”文件夹中

使用服务器ip 访问onlyoffice,docker,容器,word

  • 使用FontCreator软件制作字体

点击File->Open打开字体文件(ttf格式,如果是ttc格式,按照软件提示点击下一步将文件转成ttf格式后重新进行本步骤打开对应的ttf文件即可),点击Font->Properties,修改FontFamily为字体名称,点击ok;

点击File->Export Font as->Export Desktop Font(ttf/otf),保存字体文件为ttf格式,导出文件如下图所示:

使用服务器ip 访问onlyoffice,docker,容器,word

  • 使用Xftp将存放导出字体的fonts文件夹上传到“/home/fonts”目录下
  1. 进入OnlyOffice容器
docker exec -it 856d790c064b /bin/bash
  1. 删除容器下的原有字体,注意:若不需要删除原有字体则不执行本步骤
cd /usr/share/fonts/
rm -rf *
cd /var/www/onlyoffice/documentserver/core-fonts/
rm -rf *
  1. 退出容器
exit
  1. 在容器外面将字体复制到容器中,注意:文件夹一定要是“fonts”,需要覆盖容器下的“fonts文件夹。

使用服务器ip 访问onlyoffice,docker,容器,word

sudo docker cp /home/fonts 856d790c064b:/usr/share
  1. 进入容器
docker exec -it 856d790c064b /bin/bash
  1. 执行以下命令更新AllFonts.js文件
cd /usr/bin
./documentserver-generate-allfonts.sh
  1. 清除浏览器缓存后即可看到安装的字体

使用服务器ip 访问onlyoffice,docker,容器,word

修改字号:

  1. 将容器中的app.js复制到根目录
docker cp 856d790c064b:/var/www/onlyoffice/documentserver/web-apps/apps/documenteditor/main/app.js ./
  1. 使用Xftp传输到本地后打开,把以下内容复制到{value:8,displayValue:"8"}前面,共3处:
{value:42,displayValue:"初号"},{value:36,displayValue:"小初"},{value:26,displayValue:"一号"},{value:24,displayValue:"小一"},{value:22,displayValue:"二号"},{value:18,displayValue:"小二"},{value:16,displayValue:"三号"},{value:15,displayValue:"小三"},{value:14,displayValue:"四号"},{value:12,displayValue:"小四"},{value:10.5,displayValue:"五号"},{value:9,displayValue:"小五"},{value:7.5,displayValue:"六号"},{value:6.5,displayValue:"小六"},{value:5.5,displayValue:"七号"},{value:5,displayValue:"八号"},
  1. 将修改后的app.js文件覆盖到容器中:
docker cp /app.js 856d790c064b:/var/www/onlyoffice/documentserver/web-apps/apps/documenteditor/main/app.js
  1. 重启容器

docker restart 856d790c064b

  1. 清除浏览器缓存后即可看到安装的字号

使用服务器ip 访问onlyoffice,docker,容器,word

常见问题:

问题:启动项目后打开文件的时候提示token is not correctly

处理:

onlyoffice服务搭建过程中未添加自定义密钥,则会自动生成随机密钥。要获取默认密钥,请运行以下命令:

sudo docker exec 856d790c064b /var/www/onlyoffice/documentserver/npm/json -f /etc/onlyoffice/documentserver/local.json 'services.CoAuthoring.secret.session.string'

将获取到的密钥设置到项目中的application.properties文件:files.docservice.secret=6JLcrUAHV8SSMsk6fTG5iH0HwfMx8iau1

启动项目后打开文件的时候提示文件无法保存,请检查连接或联系管理员

处理:启动项目后,访问项目时不要使用127.0.0.1或者localhost,应使用IP地址访问如:http://172.16.1.111:9001

其他问题

若需要重新设置密钥,则按如下教程进行:

将配置文件复制到设定目录

 sudo docker cp 856d790c064b:/etc/onlyoffice/documentserver/local.json /home/myOnlyOffice

修改配置文件后覆盖到文档目录

 sudo docker cp /home/myOnlyOffice/local.json  856d790c064b:/etc/onlyoffice/documentserver/

进入容器

docker exec -it 856d790c064b /bin/bash

查看配置文件

cat /etc/onlyoffice/documentserver/local.json

为 OnlyOffice 设置密钥(JWT令牌) - ROYWANG

windows杀掉端口

查看端口号对应的进程号:

netstat -ano | findstr 8080

杀掉进程:

taskkill /f /pid 28808

springboot整合OnlyOffice

项目地址:

https://gitee.com/yinqi2030/JavaSpringOnlyOffice.git

在JavaSpringOnlyOffice\src\main\resources\application.properties文件中需配置的参数如下:

files.storage=E:\\yqfiles

server.port=9001

files.docservice.url.site=http://xabs7i.natappfree.cc/ #onlyoffice服务地址

files.docservice.secret=6JLcrUAHV8SSMsk6fTG5iH0HwfMx8iau #secret密钥

启动项目访问:http://ip:9001/即可对在线文档进行操作了

VUE组件封装方式调用onlyoffice服务

vue3脚手架搭建及运行的流程

  1. 安装nodejs
  2. 安装淘宝镜像:npm config set registry https://registry.npm.taobao.org
  3. 如果之前安装了2.0的脚手架,需要把它卸载掉,在控制台执行npm uninstall vue-cli -g 进行全局卸载
  4. 执行命令 npm install @vue/cli -g 下载vue3的脚手架
  5. 执行vue create 你的项目名称(注意不要有大写字母)
  6. 在项目路径下执行命令安装依赖:npm install
  7. 启动项目:npm run serve
  8. 启动如果报错ERROR Error: @vitejs/plugin-vue requires vue (>=3.2.13) or @vue/compiler-sfc to be present in the dependency tree. 则将vue升级到最新可用版本,在项目路径下:npm i vue@3.2.26
  9. 重新启动项目:npm run serve

运行onlyoffice官方给的整合VUE的案例

  1. 从 GitHub 存储库克隆项目:git clone GitHub - ONLYOFFICE/document-editor-vue: Vue component for ONLYOFFICE Document Server
  2. 更改 config/default.json 文件中文档服务器的地址:"documentServerUrl": "http://documentserver/";
  3. 安装react:npm i react react-dom -D
  4. 使用以下命令生成Storybook:npm run build-storybook
  5. 启动Storybook:npm run storybook
  6. 访问项目:http://localhost:6006/

常见问题

参考以下两个资料

https://www.cnblogs.com/WangJianqiu/p/17373887.html

启动vue报错 vue (>=3.2.13) or @vue/compiler-sfc_lijun_xiao2009的博客-CSDN博客

Win10系统中的docker安装OnlyOffice

安装docker

  1. win10安装docker,前提必须是要安装WSL2。

现在Docker Desktop默认使用WSL 2来运行,而不是以前的Hyper-V。

WSL2 全称是Windows Subsystem on Linux。意思是,在win10,可以直接启动一个Linux。因为docker依赖Linux内核。

  1. 下载 Linux 内核更新包

适用于 x64 计算机的 WSL2 Linux 内核更新包

点击下载最新的更新包,下好后双击运行安装即可。

  1. 打开系统虚拟机平台和WSL

控制面板->程序->启用或关闭Windows功能

使用服务器ip 访问onlyoffice,docker,容器,word

使用服务器ip 访问onlyoffice,docker,容器,word

选中这两个。如果提示重新启动电脑的就重启。

  1. 通过 管理员身份 运行Windows PowerShell,将WSL2设置为默认版本

wsl --set-default-version 2

  1. 去docker官网下载 ,桌面版docker, 下好后直接双击运行安装即可

Docker: Accelerated, Containerized Application Development

使用服务器ip 访问onlyoffice,docker,容器,word

  1. 打开Docker Desktop

打开后如果弹出如下错误,则更新WSL

wsl --update

使用服务器ip 访问onlyoffice,docker,容器,word

重新打开后正常启动。

  1. 配置国内加速镜像

点击“settings-->Docker Engine”,在最外层的“{}”中添加逗号后,将如下内容粘贴到大括号里面

  "registry-mirrors": [
    "https://bd7n7e9w.mirror.aliyuncs.com",
    "http://docker.mirrors.ustc.edu.cn"
  ]

使用服务器ip 访问onlyoffice,docker,容器,word

  1. 查看信息

查看版本:docker version

查看详细信息:docker info

使用服务器ip 访问onlyoffice,docker,容器,word

  1. 更改数据存储位置

Windows版本(Windows 10)WSL 2 版本 docker 默认程序安装到c盘,数据存放于 C:\Users\当前用户名\AppData\Local\Docker\wsl\data\ext4.vhdx 这样会导致docker使用量上去C盘的空间越来越大。为了解决这个问题将数据部分移动到其他盘。

  • 停止docker

点击如下按钮退出

使用服务器ip 访问onlyoffice,docker,容器,word

关闭所有发行版

wsl --shutdown

打开cmd窗口。查看停止情况,看state是否为stop

wsl --list -v

使用服务器ip 访问onlyoffice,docker,容器,word

  • 备份导出目前已有的数据

wsl --export docker-desktop-data "E:\soft\dockerFile\docker-desktop-data.tar"

  • 删除原有数据

wsl --unregister docker-desktop-data

  • 导入数据到新盘

创建目录存放docker的数据,如“E:\soft\dockerFile\data”目录

wsl --import docker-desktop-data "E:\soft\dockerFile\data" "E:\soft\dockerFile\docker-desktop-data.tar" --version 2

使用服务器ip 访问onlyoffice,docker,容器,word

  • 重新启动docker

使用服务器ip 访问onlyoffice,docker,容器,word

docker安装OnlyOffice

  1. 拉取镜像pull OnlyOffice,建议指定版本号,其他版本在项目中可能遇到问题。
docker pull onlyoffice/documentserver:7.3
  1. 运行容器

指定secret,并开启JET校验:

docker run -i -t -d -p 9800:80 --restart=always -e JWT_SECRET=VI71S3cGtXg96HgFWzQhblz1KwMc1Jzk -e JWT_ENABLED=true onlyoffice/documentserver:7.3

  • 执行命令

打开网页http://IP:9800/,执行网页中的以下两条命令后即安装成功。

使用服务器ip 访问onlyoffice,docker,容器,word

使用服务器ip 访问onlyoffice,docker,容器,word

使用服务器ip 访问onlyoffice,docker,容器,word文章来源地址https://www.toymoban.com/news/detail-767195.html

到了这里,关于docker搭建onlyoffice及使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 本地搭建wamp服务器并内网穿透实现无公网IP远程访问

    转载自cpolar极点云的文章:无公网IP?教你在外远程访问本地Wamp服务器「内网穿透」 软件技术的发展日新月异,各种能方便我们生活、工作和娱乐的新软件层出不穷,但也有一些经过时间和用户考验的老牌软件屹立不倒。就一我们熟悉的网站集成环境来说,全球就有很多种

    2024年02月03日
    浏览(37)
  • 在本地搭建WAMP服务器并通过端口实现局域网访问(无需公网IP)

    软件技术的发展日新月异,各种能方便我们生活、工作和娱乐的新软件层出不穷,但也有一些经过时间和用户考验的老牌软件屹立不倒。就一我们熟悉的网站集成环境来说,全球就有很多种server软件。每个软件都有各自的特色(虽然同质化很严重),也拥有自己固定的适用群

    2024年02月12日
    浏览(40)
  • 利用Windows搭建Emby媒体库服务器,轻松实现无公网IP的远程访问

    在现代五花八门的网络应用场景中,观看视频绝对是主力应用场景之一,加上移动网络技术的发展,随时随地看视频已经成为基本需求。不过,随着资本向视频应用的集中,想要看视频就必须先充会员,这让笔者很是郁闷,于是产生了自建影音云盘的想法,期间也尝试了多种

    2024年02月08日
    浏览(45)
  • 搭建免费的文件自动同步服务器,无公网IP外网远程访问【Syncthing私人云盘】

    在数据爆炸的当下,每天都会产生海量的数据,这些数据可能是我们手机里新拍的照片、工作接收的文件档案、随手编辑写下的文档、或者新下载的视频等等,这些数据很快就能填满容量堪忧的智能设备(手机、平板等)。正因如此,云存储一时间风头无两,不仅能让这些海

    2024年02月06日
    浏览(43)
  • 【无公网IP内网穿透】 搭建Emby媒体库服务器并远程访问「家庭私人影院」

    目录 1.前言 2. Emby网站搭建 2.1. Emby下载和安装 2.2 Emby网页测试 3. 本地网页发布 3.1 注册并安装cpolar内网穿透 3.2 Cpolar云端设置 3.3 Cpolar内网穿透本地设置 4.公网访问测试 5.结语 在现代五花八门的网络应用场景中,观看视频绝对是主力应用场景之一,加上移动网络技术的发展,

    2024年02月07日
    浏览(79)
  • 搭建Serv-U FTP服务器共享文件外网远程访问「无公网IP」

    转载自内网穿透工具的文章:使用Serv-U搭建FTP服务器并公网访问【内网穿透】 科技日益发展的今天,移动电子设备似乎成了我们生活的主角,智能手机、平板电脑几乎从不离身。但智能手机和平板电脑也有缺憾,就是自身的存储容量实在太少,能随时调取资料的大容量存储设

    2024年02月03日
    浏览(43)
  • 搭建Serv-U FTP服务器共享文件并外网远程访问「无公网IP」

    转载自内网穿透工具的文章:使用Serv-U搭建FTP服务器并公网访问【内网穿透】 科技日益发展的今天,移动电子设备似乎成了我们生活的主角,智能手机、平板电脑几乎从不离身。但智能手机和平板电脑也有缺憾,就是自身的存储容量实在太少,能随时调取资料的大容量存储设

    2024年02月03日
    浏览(29)
  • nginx 配置 可使用服务器IP访问网站

    如果想要在局域网中使用ip访问nginx配置的网站,需要在防火墙中设置开放端口 nginx 默认监听的是80端口,,我们也可以在nginx的配置文件中复制粘贴多个server,并设置不同的监听端口 1,添加80端口  firewall-cmd --zone=public --add-port  80/tcp  --permanent 2,重启防火墙服务:systemctl

    2024年02月14日
    浏览(40)
  • docker搭建minio服务器,解决内网穿透后外网无法访问问题

    搭建MinIo 内部搭建的MinIo服务器映射到外网后访问文件资源一直报认证异常,经资料查阅minio有自己一套加密校验逻辑,访问时不可改动其桶名 解决内网穿透minio访问异常问题 通过nginx进行代理,代理时不改变访问路径,外网映射时映射nginx的代理地址 修改Nginx配置

    2024年02月11日
    浏览(39)
  • 使用公网访问内网IIS网站服务器【无需公网IP】

    前言 这里介绍通过内网穿透,实现公网访问内网IIS网站服务器。 都知道,现在基本不会被分配到公网IP了,普遍是内网IP。而在没有公网IP的情况下,想要从公网访问在本地的IIS网站服务器,一般都是通过内网穿透。 市面上内网穿透的工具有很多,但是有的会限制流量,或者

    2024年02月13日
    浏览(30)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包