Mrdoc知识文档

news2024/9/29 21:19:23

MrDoc知识文档平台是一款基于Python开发的在线文档系统,适合作为个人和中小型团队的私有云文档、云笔记和知识管理工具,致力于成为优秀的私有化在线文档部署方案。我现在主要把markdown笔记放在上面,因为平时老是需要查询一些知识点,总是百度,然后查出来的结果一堆,有很多的坑,然后就想着还是把自己经历过的都记录一下,需要了还是看自己的记录好了。

官网地址:MrDoc文档

Mrdoc
Mrdoc

分为开源版和专业版,作为个人肯定是开源版的足够了。不过好像docker版本到后面好像停止了还是换了个版本?

系统环境:

  1. 系统CentOS8
  2. docker环境安装配置完成

开始安装

创建文件夹用来存放配置文件等

mkdir /www/mrdoc # 创建mrdoc目录
mkdir /www/mrdoc/media # 创建media目录以存放资源文件

/www/mrdoc下面新建config.ini配置文件,根据需要进行修改,如果只是尝鲜可以不修改使用默认配置,模板如下:

# 如果自己没有更换其它数据库的需求,请原样复制粘贴,不要乱改配置.
# mysql版本注意:建议在5.6-8.0以内,8.0版本开始以下语句不支持,请自行解决.
# mysql需要手动创建一个数据库:create database mrdoc character set utf8mb4 collate utf8_bin;
#grant all privileges on mrdoc.* to 'jonnyan404'@'%' identified by 'www.mrdoc.fun' with grant option;
#flush privileges;
[site]
# True表示开启站点调试模式,False表示关闭站点调试模式
debug = False
[database]
# engine,指定数据库类型,接受sqlite、mysql、oracle、postgresql
engine = sqlite
# name表示数据库的名称
# name = mrdoc
# user表示数据库用户名
# user = jonnyan404
# password表示数据库用户密码
# password = www.mrdoc.fun
# host表示数据库主机地址,(如果是使用容器的话,地址需要填写宿主机docker网络地址)
# host = db_host
# port表示数据库端口
# port=3306
[selenium]
# 在Windows环境下测试或使用,请配置driver = Chrome
# driver = Chrome
# 如果系统无法正确安装或识别chromedriver,请指定chromedriver在计算机上的绝对路径
driver_path = /usr/lib/chromium/chromedriver

采用默认的sqli数据库就不需要修改,需要使用其他如mysql数据库需要安装python-mysql环境。

运行容器

# 拉取镜像
docker pull jonnyan404/mrdoc-nginx

# 运行容器
docker run -d --name mrdoc -p 10086:10086 --restart=always -v /www/mrdoc:/app/MrDoc/config -v /www/mrdoc/media:/app/MrDoc/media jonnyan404/mrdoc-nginx

默认使用端口:10086,需要防火墙和安全组放通参考之前防火墙配置文章。

默认账号:admin。

默认密码:需要使用docker logs mrdoc 2>&1|grep pwd 查询,第一次登录进去修改即可。

# 如果上述密码无法登陆,通过创建新用户或者修改密码进行操作。
#方式一:创建新管理员
docker exec -it mrdoc  python manage.py createsuperuser
#根据提示输入 账号/邮箱/密码 即可

#方式二:修改管理员密码
docker exec -it mrdoc python manage.py changepassword admin
#按提示输入新密码即可,英文大小写混合+数字大于8位

打开Mrdoc

http://ip:10086,进行配置。 首页

简单使用:包括后台设置、用户设置、文集和文档设置

后台管理
后台管理
文集管理
文集管理
文档管理
文档管理

个人中心 文档支持多用户注册登录,适合小型团队协作,在线编辑,粘贴图片上传,我觉得暂时是满足我的要求了,其他台复杂的也不需要。

版本升级

容器自动升级

升级与更新都强烈建议备份文档和数据库,防止出现不可逆故障。

docker run -d \
    --name watchtower \
    --restart unless-stopped \
    -v /var/run/docker.sock:/var/run/docker.sock \
    containrrr/watchtower \
    --cleanup \
    -s "0 3 * * *" \
    mrdoc

#
 仅限已挂载数据目录的使用,否则会造成数据丢失.
# --cleanup 升级会自动清理老版本
# -s 定时检查更新,上述默认每天凌晨3点检查更新
# mrdoc 代表仅自动更新名称为 mrdoc 的容器

手动升级

大概思路是备份映射到宿主机文件目录,然后重新拉取镜像,使用相同的docker run参数创建容器。

# 数据备份
如果未挂载本地目录,请按照步骤执行。
如果已挂载,仅需执行第 2 步即可。
docker cp mrdoc:/app/MrDoc/config /tmp/config
docker cp mrdoc:/app/MrDoc/media /tmp/media

#
 升级版本
在此以alpine版本进行示例,如果使用Nginx版本,请将mrdoc-alpine替换为mrdoc-nginx

docker pull jonnyan404/mrdoc-alpine
docker stop mrdoc  && docker rm mrdoc
然后重新运行之前的 docker run 命令

#
 恢复数据
docker cp /tmp/config mrdoc:/app/MrDoc
docker cp /tmp/media mrdoc:/app/MrDoc

#
 重启容器
docker restart mrdoc

本文由 mdnice 多平台发布

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

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

相关文章

一张图看懂NvMDynamicConfiguration和NvMResistantToChangedSw对NvM数据变更的影响

一、背景 在实际项目中,我们会通过NvM将易失性数据存入EEPRAM。如果说NvM中配置好的Block List在项目迭代过程中没有Block的增加或减少,没有Block数据长度的增加或减少,那么NvM的使用就不会有什么问题。 但是如果Block List在某一天要增加一…

C_10练习题答案

一、单项选择题(本大题共 20小题,每小题 2分,共 40分。在每小题给出的四个备选项中,选出一个正确的答案,并将所选项前的字母填写在答题纸的相应位置上。) 1,结构化程序由三种基本结构组成,三种基本结构组成的算法是(A) A.可以完成任何复杂的任务 B.只能完成部分复杂的任务…

护眼台灯真的护眼吗?专业的学生护眼台灯推荐

最为家长,日常最关心的事情除了孩子的学习以外,就是视力健康问题。通过数据显示,在我国小学生人群中,每47人中就有一位近视,发病率约为23%。中学生约为55%,大学生约为76%,这个近视率是非常高的,因此很多家长…

C语言 内存操作函数 +内存分区

内存操作函数 memset() //memset 函数将指定内存区域 ptr 开始的 num 个字节设置为 value。 void *memset(void *ptr, int value, size_t num);参数:ptr:指向要填充的内存区域的指针。value:要填充的值,以整数形式传递。num&…

专题地图制作与布局编辑

一、实验名称: 专题地图制作与布局编辑 二、实验目的: 通过本实验练习,掌握ARCGIS专题地图制作与布局编辑。 三、实验内容和要求: 实验内容: 利用ARCGIS软件相关分析工具及实验数据,制作专题地图&…

MySQL索引_什么是索引_索引的分类_什么时候需要/不需要创建索引_优化索引_索引失效

文章目录 索引1. 什么是索引2. 索引的分类按数据结构分类按物理存储分类按字段特性分类按字段个数分类 3. 什么时候需要 / 不需要创建索引?什么时候适用索引?什么时候不需要创建索引? 4. 优化索引的方法前缀索引优化覆盖索引优化主键索引最好…

迅腾文化助力企业品牌创新,加快增强品牌发展新动能

迅腾文化助力企业品牌创新,加快增强品牌发展新动能 随着市场竞争的日益激烈,品牌创新已成为企业持续发展的关键。为了在市场中脱颖而出,许多企业纷纷寻求外部合作伙伴以加快品牌发展。广州迅腾文化传播有限公司拥有13年品宣经验的企业&#…

迪文屏图标控件保姆级教程

要主图的去末尾,末尾福利图在等着你~~~ 文章目录 前言 开发环境 二、使用步骤 1.添加图标控件 2.设置图标属性 3.图标库ICL文件生成 4.单片机程序编写 容易踩得坑 一、前言 本篇文章主要介绍了在DGBUS平台上使用图标变量的步骤。首先需要在DGBUS中添加一个图标变量控…

【教学类-35-07】正方形折纸上的学号描字帖(15*15CM1份)

背景需求: 尝试将加减法题目打印在手工纸上,写完书写题后,反面绘画,最后折纸。 用同样的思路,在15*15CM正方形手工纸上做一套幼儿学号描字帖 素材准备 WORD模板(纸张长宽15*15CM,边距上下左右0&…

【源码解析】从Conditon角度聊聊AQS原理

前几篇文章,我们详细描述了线程池的原理以及核心代码,以及阻塞队列,ReentrantLock的核心流程,本篇主要介绍下lock锁中的condition 公平锁和非公平锁 public ReentrantLock() {sync new NonfairSync();}public ReentrantLock(boo…

Liunx系统挂载磁盘

1.具体步骤 大概五个步骤 添加磁盘磁盘分区格式化分区挂载分区到指定目录设置开机自动挂载 目标将sdb1分区挂载到/data目录 2.添加磁盘 使用lsblk -f命令可以查看当前系统磁盘情况 lsblk -f 可以看到已经有一个磁盘sda,现在我们给虚拟机增加一个磁盘 添加完成后…

五、Java核心数组篇

1.数组 概念: ​ 指的是一种容器,可以同来存储同种数据类型的多个值。 ​ 但是数组容器在存储数据的时候,需要结合隐式转换考虑。 比如: ​ 定义了一个int类型的数组。那么boolean。double类型的数据是不能存到这个数组中的&…

什么台灯好用不伤眼睛?适合考公使用的台灯推荐

随着时代的发展与进步,不管是办公族还是学生党的压力也越来越大的,不少人在晚上回去之后仍然需要学习、工作,这样的一件试几乎成为了“家常便饭”,而这个过程中必不可少就是台灯。有些人为了保护眼睛会选择护眼台灯,但…

考研护眼台灯怎么选好?2023考研党台灯分享

现在随着生活水平的提升,孩子的教育也越好越好了,不过随之而来的就是繁重的学习压力,和做不完的作业。细心的家长可能已经发现,自从孩子步入高年级之后,晚上回到家完成作业的时间也越来越长了,这不得不让身…

OfficeWeb365 SaveDraw 文件上传漏洞复现

0x01 产品简介 OfficeWeb365 是专注于 Office 文档在线预览及PDF文档在线预览云服务,包括 Microsoft Word 文档在线预览、Excel 表格在线预览、Powerpoint 演示文档在线预览,WPS 文字处理、WPS 表格、WPS 演示及 Adobe PDF 文档在线预览。 0x02 漏洞概述 OfficeWeb365 Sav…

面相对象开发的原则

1、开闭原则 对修改关闭,对扩展打开。 2、里氏替换原则 子类继承父类的方法时,不可重写父类的方法。 如果重写了父类的方法会导致整个继承体系比较差,特别是运用多态比较平凡时,程序运行出错概率较大。 如果出现了违背“里氏替换…

力扣105与106从前序与中序(中序与后序)遍历序列构造二叉树

本题刚接触时比较懵,做出来后就很好理解。之前数据结构的题:给出中序与后序(或前序与中序)画出该树 无从下笔不知如何去画,做完此题后就发现豁然开朗,不过尔尔。本题只讲中序与后序(前序与中序一…

【设计模式--行为型--命令模式】

设计模式--行为型--命令模式 命令模式定义结构案例优缺点使用场景 命令模式 定义 将一个请求封装为一个对象,使发出请求的责任和执行请求的责任分割开。这样两者之间通过命令对象进行沟通,这样方便将命令对象进行存储,传递,调用…

cpp:1:10: fatal error: opencv2/core.hpp: 没有那个文件或目录

前言&#xff1a; 我按照官网方法安装了opencv&#xff0c;运行的也是官网的测试代码&#xff1a; #include <opencv2/core.hpp> #include <opencv2/highgui.hpp> using namespace cv; int main() {printf("hello world")return 0; } 半解决&#xff…

TCP/IP详解——TCP 协议

文章目录 一、传输层协议1. TCP1.1 TCP 的字节流1.2 TCP 端口号1.3 TCP 头部1.4 TCP 选项部分字段1.5 TCP 三次握手1.6 TCP 三次握手不成功1.6.1 TCP 拒绝&#xff08;被RST重置&#xff09;1.6.2 TCP 半连接1.6.3 TCP 连接无响应 1.7 TCP 传输过程及原理1.7.1 TCP 传输过程1.7…