在我的 TODO List 里面很久之前记录了一下 Flatnotes,正好今天抽空整理了一下,
Flatnotes 是一个开源的,自托管的、无数据库的笔记 Web 应用程序,Flatnotes 使用 Python 和 Vue 的技术栈,利用文件夹存储 Markdown 文件。它提供了一个简洁高效的平台,适合个人知识管理项目。
什么是 Flatnotes?
Flatnotes 是一个轻量级的笔记应用,专为那些喜欢使用 Markdown 格式记录学习笔记、技术心得和读书感悟的用户设计。它的主要特点包括:
- 自托管:用户可以完全控制自己的数据,确保数据的安全性和私密性。
- 无数据库:Flatnotes 不需要数据库,所有笔记都以 Markdown 文件的形式存储在文件夹中,简化了数据管理。
- 移动响应式界面:支持在各种设备上访问,提供流畅的用户体验。
优点
- 简单易用:无需复杂的数据库配置,使用文件夹结构管理笔记。
- 高度可定制:用户可以根据需要自定义界面和功能。
- 安全性:自托管特性确保数据的完全控制。
- Markdown 支持:利用 Markdown 的简洁性和可读性记录笔记。
缺点
- 功能有限:只支持在线简单的 Markdown 或者 WYSIWYG 编辑器,相比一些复杂的笔记应用,Flatnotes 的功能较为简单。
- 不适合大规模协作:更适合小型团队或个人使用,大型团队可能需要更复杂的协作工具。
- 搜索不支持中文,Flatnotes 使用 [[Whoosh]] 作为全文搜索引擎,对英文的支持比较好,但是其他语言支持不行
如何使用 Docker Compose 搭建 Flatnotes?
Docker Compose 是一个用于定义和运行多容器 Docker 应用的工具。通过一个简单的 YAML 文件,用户可以快速部署和管理容器化应用。以下是使用 Docker Compose 搭建 Flatnotes 的步骤:
- 安装 Docker 和 Docker Compose,确保系统上已安装 Docker 和 Docker Compose。可以通过包管理器或从 Docker 官方网站下载并安装。
- 使用 docker-compose.yml 文件,在我的 dockerfile 中找到 flatnotes,然后配置
.env
文件 - 启动 Flatnotes 服务:
- 在命令行中导航到
docker-compose.yml
文件所在的目录,运行以下命令启动服务:docker-compose up -d
- 该命令会在后台启动 Flatnotes 服务,并在本地的 8080 端口上提供访问。
- 在命令行中导航到
- 访问 Flatnotes 应用:
- 打开浏览器,访问
http://localhost:8080
,使用配置的用户名和密码登录。
- 打开浏览器,访问
之后可以使用 [[Nginx Proxy Manager]] 等等方法反代实现域名访问。