VPS 或者飞牛云 NAS 上用 Docker 部署一个简单好用的文档管理系统 - Mindoc

VPS 或者飞牛云 NAS 上用 Docker 部署一个简单好用的文档管理系统 - Mindoc

前言
在日常工作和学习中,我们经常需要管理大量文档,但很多文档管理系统都需要付费,或者依赖云端服务,存在数据安全和隐私风险。为了更高效、安全地管理文档,我们完全可以自己搭建一个私有化的文档管理系统。

本文将以 Mindoc 为例,演示如何在 VPS 或飞牛云 NAS 上使用 Docker 部署一个简单、好用、可完全掌控的文档管理系统。通过这种方式,你可以在自己的服务器上集中管理文档,实现多人协作、内容分类、权限控制等功能,同时无需担心数据被外部服务掌控。
视频教程
项目简介
MinDoc 是一款针对 IT 团队开发的简单好用的文档管理系统。 可以用来储存日常接口文档、数据库字典、手册说明等文档。 内置项目管理、用户管理、权限管理等功能,能够满足大部分中小团队的文档管理需求。
项目图片
-
• 主页面
-
• 文章界面
-
• 添加项目
-
• 权限管理
主要功能
-
• 项目管理:可以对项目进行编辑、更改、成员添加等。
-
• 文档管理:添加和删除文档,支持文档历史恢复等。
-
• 用户管理:添加和禁用用户,修改个人资料等。
-
• 用户权限管理:实现用户角色的变更。
-
• 项目加密:可以设置项目公开状态,私有项目需要通过 Token 访问。
-
• 站点配置:二次开发时可以添加自定义配置项。
-
• 附件管理:可管理所有项目中上传的文件。
-
• 项目导出:支持导出 PDF、Word、EPUB、MOBI、Markdown 等格式项目。
-
• 标签管理:可管理已存在的项目标签。
-
• 导入项目:支持导入 Markdown 压缩包成为一个项目。
-
• 二级目录部署:支持将 MinDoc 部署到二级子目录。
Demo
项目文档: https://www.iminho.me/wiki/docs/mindoc/mindoc-summary.md
部署方法
使用 Docker 安装
本教程使用 Docker 的方式安装部署,简单便捷。

准备条件
-
- 一台服务器或者 NAS 理论上其他 NAS 也可以使用。 本文演示环境为 飞牛云 NAS 和 VPS。 需要 VPS 的可以参考: 莱卡云官网 https://www.lcayun.com/aff/PQCSKOCK
-
- 本项目使用到的开源项目 https://github.com/mindoc-org/mindoc目前有 7.7k stars 更多功能或者二次修改可以访问 Gitee
-
- 域名(可选) 可以根据自己的需求绑定域名。
①《飞牛 NAS 上搭建》
新建项目:
mindoc
compose 配置如下:
services:
mindoc:# 服务名称,可以自定义
image: ywsj/mindoc:latest # 使用ywsj/mindoc的镜像,来自docker-hub镜像仓库
container_name:mindoc# 容器名称
privileged:false# 是否启用特权模式,这里禁用
restart:always# 容器退出后总是自动重启
ports:
-8181:8181# 端口映射:宿主机8181端口 -> 容器8181端口
volumes:
-./mindoc/conf://mindoc/conf # 配置文件挂载
-./mindoc/static://mindoc/static # 静态资源挂载
-./mindoc/views://mindoc/views # 页面模板挂载
-./mindoc/uploads://mindoc/uploads# 上传文件挂载
-./mindoc/runtime://mindoc/runtime# 运行时文件挂载(日志、缓存等)
-./mindoc/database://mindoc/database# 数据库存储挂载
environment:
-MINDOC_RUN_MODE=prod# 运行模式:生产环境(prod) / 开发环境(dev)
-MINDOC_DB_ADAPTER=sqlite3# 数据库类型,这里使用 sqlite3
-MINDOC_DB_DATABASE=./database/mindoc.db# 数据库文件路径
-MINDOC_CACHE=true# 是否开启缓存
-MINDOC_CACHE_PROVIDER=file# 缓存提供方式:文件缓存
-MINDOC_ENABLE_EXPORT=true# 是否启用导出功能(true/false)
-MINDOC_BASE_URL=# 网站基础 URL(可以留空,或配置域名)
-MINDOC_CDN_IMG_URL=# 图片 CDN 地址
-MINDOC_CDN_CSS_URL=# CSS CDN 地址
-MINDOC_CDN_JS_URL= # JS CDN 地址
dns:
-223.5.5.5# 阿里公共 DNS
-223.6.6.6 # 阿里公共 DNS接下来启动即可

-
• 正常启动
-
• 第一次启动需要等待数据库初始化完成就可以
打开 飞牛云的 IP:8181(防火墙放开端口)即可访问。

默认管理员的用户名和密码
admin
123456⚠️ 请及时修改默认密码!
注意事项
文档的积累是个漫长的过程。 为了保证数据安全,可以定时备份目录 mindoc 避免文档丢失。

补充:Docker 可用的镜像仓库
国内如果无法拉取镜像的可以使用:
-
• 仓库1:https://1ms.run/
-
• 仓库2:https://docker.ywsj.tk/
-
• 仓库3:https://mirror.azure.cn/
-
• 仓库4:https://hub.rat.dev/
-
• 仓库5:https://docker.1ms.run
-
• 仓库7:https://abc.itelyou.cf/
②《VPS 上搭建》
一、Docker 环境部署
在 VPS 安装 docker 和 docker-compose
-
• Docker 官方安装文档(英文) https://duan.yyzq.eu.org/docker-001
-
• Docker-Compose 官方安装文档(英文) https://duan.yyzq.eu.org/docker-002
-
• Centos 安装 Docker 和 Docker-compose(中文) https://duan.yyzq.eu.org//03
-
• Ubuntu 安装 Docker 和 Docker-compose(中文) https://duan.yyzq.eu.org//04
推荐直接用一键脚本
docker 安装脚本
bash <(curl -sSL https://cdn.jsdelivr.net/gh/SuperManito/LinuxMirrors@main/DockerInstallation.sh)docker-compose 安装脚本
curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose && chmod +x /usr/local/bin/docker-compose二、创建 docker-compose.yml 文件
mkdir mindoc; cd mindoc # 创建一个目录,并进入此目录
vim docker-compose.ymlservices:
mindoc:# 服务名称,可以自定义
image: ywsj/mindoc:latest # 使用ywsj/mindoc的镜像,来自docker-hub镜像仓库
container_name:mindoc# 容器名称
privileged:false# 是否启用特权模式,这里禁用
restart:always# 容器退出后总是自动重启
ports:
-8181:8181# 端口映射:宿主机8181端口 -> 容器8181端口
volumes:
-./mindoc/conf://mindoc/conf # 配置文件挂载
-./mindoc/static://mindoc/static # 静态资源挂载
-./mindoc/views://mindoc/views # 页面模板挂载
-./mindoc/uploads://mindoc/uploads# 上传文件挂载
-./mindoc/runtime://mindoc/runtime# 运行时文件挂载(日志、缓存等)
-./mindoc/database://mindoc/database# 数据库存储挂载
environment:
-MINDOC_RUN_MODE=prod# 运行模式:生产环境(prod) / 开发环境(dev)
-MINDOC_DB_ADAPTER=sqlite3# 数据库类型,这里使用 sqlite3
-MINDOC_DB_DATABASE=./database/mindoc.db# 数据库文件路径
-MINDOC_CACHE=true# 是否开启缓存
-MINDOC_CACHE_PROVIDER=file# 缓存提供方式:文件缓存
-MINDOC_ENABLE_EXPORT=true# 是否启用导出功能(true/false)
-MINDOC_BASE_URL=# 网站基础 URL(可以留空,或配置域名)
-MINDOC_CDN_IMG_URL=# 图片 CDN 地址
-MINDOC_CDN_CSS_URL=# CSS CDN 地址
-MINDOC_CDN_JS_URL= # JS CDN 地址
dns:
-223.5.5.5# 阿里公共 DNS
-223.6.6.6 # 阿里公共 DNS三、执行容器运行命令
docker-compose up -d # 运行容器
docker-compose ps # 查看是否开启成功正常启动如下所示:
docker-compose ps
NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS
mindoc ywsj/mindoc:latest "/bin/bash /mindoc/s…" mindoc About an hour ago Up About an hour 0.0.0.0:8181->8181/tcp, [::]:8181->8181/tcp四、打开 web 页面使用
成功以后需要打开自己相应的端口 (9180) 防火墙,就可以 web 端访问了:
http://ip:8181
其他步骤参考以上 NAS 的内容。
③《Dockge 上搭建》
直接复制 docker-compose 内容然后启动即可。

绑定域名
如需绑定域名的自行绑定。 绑定域名可以参考: NginxProxyManager https://duan.yyzq.eu.org//npm-ch
绑定完域名配置好证书就可以用域名来访问了。
有任何问题可以直接留言或者问我 有任何问题可以直接留言或者问我 有任何问题可以直接留言或者问我
欢迎关注我们的微信公众号!

飞牛云NAS或者VPS部署KatelyaTV-可配合TVBOX使用
VPS或者飞牛云NAS上用Docker部署一个界面超级酷炫的前端音乐播放器feishin
Docker搭建一个轻量级开源网盘项目-filebrowser