CentOS9 安装Docker+Dpanel+onlyoffice(https、更改字体、字号、去除限制)的避坑笔记

CentOS9 安装Docker+onlyoffice(https、更改字体、字号、去除文件大小限制)的避坑笔记

  • 一、安装Docker
  • 二、更新docker镜像源:
  • 三、安装Dpanel
  • 四、安装onlyoffice(开启https及一些碰到的问题)
  • 五、更改字体和字号
  • 六、去除限制

动手前,预防遭遇各种莫名奇妙的问题,先把selinux给disabled掉:

nano /etc/selinux/config

SELINUX=enforcing,改为:SELINUX=disabled,然后reboot一下系统。

一、安装Docker

1.方法一:使用docker执行脚本安装:

curl -sSL https://get.docker.com/ | sh 

2.方法二:使用dnf安装:
添加docker仓库:

dnf config-manager --add-repo=https://download.docker.com/linux/centos/docker-ce.repo

安装docker:

dnf install docker-ce

安装完毕后,在执行:

#设为开机启动
systemctl enable --now docker#启动docker
systemctl start docker#查看状态
systemctl status docker#查看版本
docker -v

二、更新docker镜像源:

由于某种原因,国内从DockerHub拉取镜像速度会很慢,反正我这里根本无法使用,所以找了一些可用的源,把源添加到:/etc/docker/daemon.json就可以了

nano /etc/docker/daemon.json

把下面内容复制进去,然后ctrl+o,ctrl+x保存退出:

{"registry-mirrors": ["https://docker.registry.cyou","https://docker-cf.registry.cyou","https://dockercf.jsdelivr.fyi","https://docker.jsdelivr.fyi","https://dockertest.jsdelivr.fyi","https://mirror.aliyuncs.com","https://dockerproxy.com","https://mirror.baidubce.com","https://docker.m.daocloud.io","https://docker.nju.edu.cn","https://docker.mirrors.sjtug.sjtu.edu.cn","https://docker.mirrors.ustc.edu.cn","https://mirror.iscas.ac.cn","https://docker.rainbond.cc"]
}

重启docker:

systemctl daemon-reload
systemctl restart docker

至此,我们的docker已经可以正常使用了。

三、安装Dpanel

用途和使用就不说了,详见官方介绍,官方地址:https://dpanel.cc
我选择的是lite版:

docker run -it -d --name dpanel --restart=always \-p 8807:8080 -e APP_NAME=dpanel \-v /var/run/docker.sock:/var/run/docker.sock \-v dpanel:/dpanel dpanel/dpanel:lite

防火墙放行8807端口:

firewall-cmd --add-port=8807/tcp --permanent
firewall-cmd --reload

好了,你的dpanel面板已经安装好了,打开你的浏览器访问:http://你的IP:8807

四、安装onlyoffice(开启https及一些碰到的问题)

1.执行下面命令,安装onlyoffice社区版,目前最新版本为8.2.2,

docker run -i -t -d -p 443:443 --name office --restart=always \-v /app/onlyoffice/DocumentServer/logs:/var/log/onlyoffice  \-v /app/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data  \-v /app/onlyoffice/DocumentServer/lib:/var/lib/onlyoffice \-v /app/onlyoffice/DocumentServer/db:/var/lib/postgresql -e JWT_ENABLED=false onlyoffice/documentserver

2.防火墙放行443端口:

firewall-cmd --add-port=443/tcp --permanent
firewall-cmd --reload

3.添加证书:
进入:/app/onlyoffice/DocumentServer/data目录,mkdir certs创建certs目录,然后把证书上传到这个目录下。
我用的是mkcert生成的自签证书,如果你对mkcert有兴趣,可以到我另一个帖子看:https://blog.csdn.net/alinathz/article/details/106440017

mkcert生成出来的是pem文件,这里需要把证书和key都改名为:
证书改名为:onlyoffice.crt
key改名为:onlyoffice.key
接着把证书上传到/app/onlyoffice/DocumentServer/data/certs目录下。

4.开启https访问:
A.在容器输入:service nginx stop,把容器的nginx停用掉;
B.复制ds-ssl.conf.tmpl替换ds.conf文件:

sudo cp -f /etc/onlyoffice/documentserver/nginx/ds-ssl.conf.tmpl /etc/onlyoffice/documentserver/nginx/ds.conf

C.修改/etc/onlyoffice/documentserver/nginx/ds.conf文件,把里面的{{SSL_CERTIFICATE_PATH}} 和{{SSL_KEY_PATH}} 替换为证书的路径:

nano /etc/onlyoffice/documentserver/nginx/ds.conf# 证书
ssl_certificate /var/www/onlyoffice/Data/certs/onlyoffice.crt;
# 证书key
ssl_certificate_key /var/www/onlyoffice/Data/certs/onlyoffice.key;

D.修改完后,重启容器的nginx:service nginx start

E.执行下面的脚本:

bash /usr/bin/documentserver-update-securelink.sh

5.进入onlyoffice容器修改/etc/onlyoffice/documentserver/default.json
进入onlyoffice容器,我们上面创建的是office,so…

docker exec -it office /bin/bash

进入后粗暴些,直接:nano /etc/onlyoffice/documentserver/default.json,找到:

"requestDefaults": {"headers": {"User-Agent": "Node.js/6.13","Connection": "Keep-Alive"},"gzip": true,"rejectUnauthorized": true
}

"rejectUnauthorized": true 改为 "rejectUnauthorized": false,这个是解决自签证书无法访问未授权的问题。

接着,找到:

"request-filtering-agent" : {"allowPrivateIPAddress": false,"allowMetaIPAddress": false
}

把两个false改为true,这个解决无法打开document.url指向的文件,提示“无法下载”的问题。

好了,经过上面的操作,你现在可以用https://docker服务器地址,来访问你的onlyoffice了。

我打算用它的API,直接来编辑我网站里面的文档,所以做了一个测试:

<!DOCTYPE html>
<html><head><meta charset="utf-8"><title>ONLYOFFICE Document Editor Code Sample</title><meta name="viewport" content="width=device-width,initial-scale=1"><style>body {height: 100vh; margin: 0}</style><script src="https://docker服务器地址/web-apps/apps/api/documents/api.js"></script></head><body><div id="placeholder"></div><script type="module">const config = {document: {fileType: "docx",key: "随机生成的KEY",title: "Playground Document",url: "https://你的网站地址/test.docx"},documentType: "word",editorConfig: {lang: "zh"},height: "100%",width: "100%"}const editor = new DocsAPI.DocEditor("placeholder", config)</script></body>
</html>

然后直接访问上面的html文件,如果可以直接看到test.docx的内容,那就证明已经OK了。

五、更改字体和字号

刚刚发现,字号显示是正常的,所以不用改,哈哈…现在说说怎么换上自己的字体吧!
1、进入onlyoffice容器,我们上面创建的是office,so…

docker exec -it office /bin/bash

2、删除自带的字体,有两个目录:

cd /usr/share/fonts/
rm -rf *cd /var/www/onlyoffice/documentserver/core-fonts/
rm -rf *

删除完后退出exit容器。

3、到c:\windows\fonts目录下面找需要用的字体,然后复制到其他地方;

4、把复制出来的字体,上传到宿主机上(U盘,tftp,MobaXterm等方式),如我复制到/home/fonts目录里,然后用下面命令复制到office容器里:

docker cp /home/fonts office:/usr/share/fonts/truetype/custom

5、在进入容器docker exec -it office /bin/bash执行下面命令重新生成:

/usr/bin/documentserver-generate-allfonts.sh

重新生成完毕后,刷新下页面就可以看到改好的字体了。

六、去除限制

去除文件大小限制
参考:https://blog.csdn.net/g401946949/article/details/144337540
A.进入容器docker exec -it office /bin/bash,编辑/etc/onlyoffice/documentserver/default.json

nano /etc/onlyoffice/documentserver/default.json

找到并修改limits_tempfile_upload(模板上传限制),maxDownloadBytes(最大下载限制),uncompressed(未压缩限制):

limits_tempfile_upload:104857600(默认10M)
maxDownloadBytes:104857600(默认10M)
uncompressed:“50M”(默认50M)

根据需求自己修改,保存后,退出容器,重启容器:docker restart office

记录结束,希望可以帮到你。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/893568.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【玩转全栈】----YOLO8训练自己的模型并应用

继上篇&#xff1a; 【玩转全栈】---基于YOLO8的图片、视频目标检测-CSDN博客 相信大家已经可以训练一些图片和视频了&#xff0c;接下来我将为大家介绍如何训练自己的特定模型&#xff0c;并用其进行检测 目录 准备数据 图片数据 标识数据 配置文件 运行 测试训练结果 存在的问…

OpenCV文字绘制支持中文显示

OpenCV版本&#xff1a;4.4 IDE&#xff1a;VS2019 功能描述 OpenCV绘制文本的函数putText()不支持中文的显示&#xff0c;网上很多方法推荐的都是使用FreeType来支持&#xff0c;FreeType是什么呢&#xff1f;FreeType的官网上有介绍 FreeType官网 https://www.freetype.or…

梯度下降法 (Gradient Descent) 算法详解及案例分析

梯度下降法 (Gradient Descent) 算法详解及案例分析 目录 梯度下降法 (Gradient Descent) 算法详解及案例分析1. 引言2. 梯度下降法 (Gradient Descent) 算法原理2.1 基本概念2.2 算法步骤2.3 梯度下降法的变种3. 梯度下降法的优势与局限性3.1 优势3.2 局限性4. 案例分析4.1 案…

GPSd定时检测保活TCP GPS源

为了在 TCP GPS 源丢失连接时自动重新连接&#xff0c;可以编写一个监控脚本&#xff0c;定期检查 gpspipe 输出中的 TCP 源数据是否存在。如果检测到丢失&#xff0c;则使用 gpsdctl 或直接命令重新添加 TCP 源。 1、工具 检查并安装必要工具&#xff0c;本例需要使用 gpspi…

我谈《概率论与数理统计》的知识体系

学习《概率论与数理统计》二十多年后&#xff0c;在廖老师的指导下&#xff0c;才厘清了各章之间的关系。首先&#xff0c;这是两个学科综合的一门课程&#xff0c;这一门课程中还有术语冲突的问题。这一门课程一条线两个分支&#xff0c;脉络很清晰。 概率论与统计学 概率论…

ElasticSearch JavaRestClient查询之快速入门

文章目录 查询操作流程概述构建并发起请求1. 创建请求对象2. 设置请求体3. 发送请求 查询结果的解析1. 解析结果结构2. 获取总条数3. 获取命中的数据 完整示例代码总结 查询操作流程概述 Elasticsearch 查询操作大致可以分为两个部分&#xff1a; 构建并发起请求&#xff1a;…

Quartus:开发使用及 Tips 总结

Quartus是Altera&#xff08;现已被Intel收购&#xff09;推出的一款针对其FPGA产品的综合性开发环境&#xff0c;用于设计、仿真和调试数字电路。以下是使用Quartus的一些总结和技巧(Tips)&#xff0c;帮助更高效地进行FPGA项目开发&#xff1a; 这里写目录标题 使用总结TIPS…

elementUI Table组件实现表头吸顶效果

需求描述 当 table 内容过多的时候&#xff0c;页面上滑滚动&#xff0c;表头的信息也会随着被遮挡&#xff0c;无法将表头信息和表格内容对应起来&#xff0c;需要进行表头吸顶 开始编码&#x1f4aa; 环境&#xff1a;vue2.6、element UI step1&#xff1a; 给el-table__h…

用于牙科的多任务视频增强

Multi-task Video Enhancement for Dental Interventions 2022 miccai Abstract 微型照相机牢牢地固定在牙科手机上&#xff0c;这样牙医就可以持续地监测保守牙科手术的进展情况。但视频辅助牙科干预中的视频增强减轻了低光、噪音、模糊和相机握手等降低视觉舒适度的问题。…

Vue3轮播图左右联动

1、轮播图部分&#xff0c;右边鼠标移入&#xff0c;左边对应展示轮播图 可以在swiper 官网 Swiper中文网-轮播图幻灯片js插件,H5页面前端开发 选择vue中使用swiper npm i swiper 左右两边的联动&#xff1a;左边的轮播图和右边的小的列表他们的列表组成结构是一样的&#…

windows下本地部署安装hadoop+scala+spark-【不需要虚拟机】

注意版本依赖【本实验版本如下】 Hadoop 3.1.1 spark 2.3.2 scala 2.11 1.依赖环境 1.1 java 安装java并配置环境变量【如果未安装搜索其他教程】 环境验证如下&#xff1a; C:\Users\wangning>java -version java version "1.8.0_261" Java(TM) SE Runti…

go-zero框架基本配置和错误码封装

文章目录 加载配置信息配置 env加载.env文件配置servicecontext 查询数据生成model文件执行查询操作 错误码封装配置拦截器错误码封装 接上一篇&#xff1a;《go-zero框架快速入门》 加载配置信息 配置 env 在项目根目录下新增 .env 文件&#xff0c;可以配置当前读取哪个环…

2025 最新flutter面试总结

目录 1.Dart是值传递还是引用传递&#xff1f; 2.Flutter 是单引擎还是双引擎 3. StatelessWidget 和 StatefulWidget 在 Flutter 中有什么区别&#xff1f; 4.简述Dart语音特性 5. Navigator 是什么&#xff1f;在 Flutter 中 Routes 是什么&#xff1f; 6、Dart 是不是…

HarmonyOS Next构建工具 lycium 原理介绍

HarmonyOS Next构建工具 lycium 原理介绍 背景介绍 HarmonyOS Next中很多系统API是以C接口提供&#xff0c;如果要使用C接口&#xff0c;必须要使用NAPI在ArkTS与C间交互&#xff0c;这种场景在使用DevEco-Studio中集成的交叉编译工具&#xff0c;以及cmake构建工具就完全够用…

最长递增——蓝桥杯

1.题目描述 在数列 a1​,a2​,⋯,an​ 中&#xff0c;如果ai​<ai1​<ai2​<⋯<aj​&#xff0c;则称 ai​ 至 aj​ 为一段递增序列&#xff0c;长度为 j−i1。 定一个数列&#xff0c;请问数列中最长的递增序列有多长。 输入描述 输入的第一行包含一个整数 n。…

【远程视频必备】Briefing:安全视频群聊让远程办公无忧

文章目录 前言1.关于briefing2.本地部署briefing3.使用briefing4.cpolar内网穿透工具安装5.创建远程连接公网地址6.固定briefing公网地址 前言 对于有远程办公或者身处异地与家人好友视频聊天需求的人来说&#xff0c;在享受高效沟通的同时&#xff0c;也或多或少会有对信息泄…

华为发展历程:战略转型与分析

纵观30多年的发展历程&#xff0c;在创始人任正非及创业团队奋力牵引下&#xff0c;全体员工共同奋斗&#xff0c;华为实现了从“一无所有”到“三分天下”、从“积极跟随者”到“行业领先者”的跨越式发展。 华为在业务战略上经历了数次变革&#xff0c;分别是从农村到城市&a…

热更新杂乱记

热更新主要有一个文件的MD5值的比对过程&#xff0c;期间遇到2个问题&#xff0c;解决起来花费了一点时间 1. png 和 plist 生成zip的时候再生成MD5值会发生变动。 这个问题解决起来有2种方案&#xff1a; &#xff08;1&#xff09;.第一个方案是将 png和plist的文件时间改…

Elementor Pro 3.27 汉化版 2100套模板 安装教程 wordpress主题中文编辑器插件免费下载

插件下载地址 https://a5.org.cn/a5ziyuan/732506.html 转载请注明出处! Elementor Pro 是流行的 Elementor 的付费扩展 WordPress 页面构建器插件. 它为免费的 Elementor 插件添加了许多附加功能和增强功能&#xff0c;使其成为创建美丽的更强大的工具 WordPress 网站。 如果…

【Unity】使用Canvas Group改变UI的透明度

目录 一、前言二、Canvas Group三、结合DOTween达到画面淡进的效果 一、前言 在平时开发中&#xff0c;可以通过控制材质、Color改变UI透明度&#xff0c;除此之外还可以CanvasGroup组件来控制透明度。 二、Canvas Group 官方文档链接&#x1f449;&#x1f449; 点击进入 …