当前位置: 首页 > news >正文

Nanote:极简Markdown笔记应用

在这里插入图片描述

简介

什么是 Nanote ?

Nanote 是一个轻量级的自托管笔记应用程序,追求简洁和高性能。采用基于文件系统的存储方式,没有数据库,只有文件夹和文件,使用户能够保持其笔记的 100% 可移植性。

主要特点

  • 📂 基于笔记本的组织 - 文件夹作为笔记本,Markdown 文件作为笔记
  • 🔍 全局搜索 - 快速搜索所有笔记的内容(操作系统优化)
  • 📄 Markdown 支持 - 原生 .md 文件处理,具有正确的 MIME 类型
  • 🔒 本地存储 - 无需数据库 - 使用现有文件系统
  • 🐳 Docker 支持 - 完整的容器支持和示例 Compose 文件
  • 🔧 类型安全 API - 完全类型化的 REST 端点,带有验证
  • 🚀 性能 - 优化的文件操作和平台特定搜索
  • 📱 移动友好 - 适合移动设备的布局,用于查看和编辑笔记

应用场景

Nanote 适用于各种需要记录笔记的场景,例如:

  • 个人笔记: 记录个人想法、学习笔记、备忘录等。
  • 会议记录: 快速记录会议要点和行动项。
  • 写作草稿: 编写文章、博客、小说等。
  • 代码片段: 保存常用的代码片段。
  • 任何需要快速、简洁地记录文本信息的场景。

安装

在群晖上以 Docker 方式安装。

在注册表中搜索 omarmir ,选择第一个 omarmir/nanote,版本选择 latest

本文写作时, latest 版本应该是介于 0.3.00.3.1 之间;

docker 文件夹中,创建一个新文件夹 nanote,并在其中建一个子文件夹 notes

文件夹装载路径说明
docker/nanote/notes/notes存放笔记文件

端口

本地端口不冲突就行,不确定的话可以用命令查一下

# 查看端口占用
netstat -tunlp | grep 端口号
本地端口容器端口
30533000

环境

可变
NOTES_PATH设置笔记目录为 /notes
SECRET_KEY设置登录密码为 123456

命令行安装

如果你熟悉命令行,可能用 docker cli 更快捷

# 新建文件夹 nanote 和 子目录
mkdir -p /volume1/docker/nanote/notes# 进入 nanote 目录
cd /volume1/docker/nanote# 运行容器
docker run -d \--restart unless-stopped \--name nanote \-p 3053:3000 \-v $(pwd)/notes:/notes \-e NOTES_PATH=/notes \-e SECRET_KEY=123456 \omarmir/nanote:latest

也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件

version: '3.8'services:nanote:image: omarmir/nanote:latestcontainer_name: nanoterestart: unless-stoppedports:- '3053:3000'environment:- NOTES_PATH=/notes- SECRET_KEY=123456volumes:- ./notes:/noteshealthcheck:test: ['CMD', 'curl', '-f', 'http://localhost:3000/api/health']interval: 30s # Check every 30 secondstimeout: 10s # Fail if no response in 10sretries: 3 # Mark as unhealthy after 3 failed checksstart_period: 30s # Wait 10s before starting checks

然后执行下面的命令

# 新建文件夹 nanote 和 子目录
mkdir -p /volume1/docker/nanote/notes# 进入 nanote 目录
cd /volume1/docker/nanote# 将 docker-compose.yml 放入当前目录# 一键启动
docker-compose up -d

运行

在浏览器中输入 http://群晖IP:3053 就能看到登录界面

输入我们在环境变量中设置的 SECRET_KEY 的值

主界面

新建一个笔记本

点击笔记本,就可以开始添加笔记了

点击笔记,进入编辑状态

出错了?这是什么鬼?

难道是因为笔记采用了中文的原因?删了重来

果然如此,看起来 笔记本 可以用中文名,但是 笔记 不可以

快速添加另一条笔记,笔记功能很简单,采用了块编辑的方式

笔记采用的是文件存储方式

参考文档

omarmir/nanote: Lightweight, self-hosted note-taking application with filesystem-based storage so you maintain 100% portability of your notes.
地址:https://github.com/omarmir/nanote

http://www.xdnf.cn/news/229123.html

相关文章:

  • React Native 从零开始完整教程(环境配置 → 国内镜像加速 → 运行项目)
  • LeetCode 1295.统计位数为偶数的数字:模拟
  • Arduino IDE中更新esp32 3.2.0版本的办法
  • 开源协议全解析:类型、选择与法律风险规避指南
  • Sigmoid函数简介及其Python实现
  • uv安装及使用
  • 在pycharm中创建Django项目并启动
  • TIME_WAIT状态+UDP概念及模拟实现服务器和客户端收发数据
  • 决策树在电信客户流失分析中的实战应用
  • 126. 单词接龙 II
  • 数学建模论文手的学习日常01
  • 牛客:AB5 点击消除
  • 【已解决】TensorRT安装好后加载不了或者转换不了engine模型,或者加载时报错
  • LeetCode392_判断子序列
  • 基于PHP的在线编程课程学习系统
  • [特殊字符] 开发工作高内存占用场景下,Windows 内存压缩机制是否应该启用?实测分析与优化建议
  • 涨薪技术|0到1学会性能测试第44课-apachetop模块监控
  • MCU片上存储器的类型与特性
  • 【学习 python day5】
  • 3.2goweb框架GORM
  • kotlin 过滤 filter 函数的作用和使用场景
  • MATLAB小试牛刀系列(3)
  • linux系统加固
  • 基于 Rancher 部署 Kubernetes 集群的工程实践指南
  • StarRocks Lakehouse 如何重构大数据架构?
  • 基于标注数据的情感分析模型研究
  • 使用 Spring Data Redis 实现 Redis 数据存储详解
  • 【数据结构】——顺序表刷题
  • 论文阅读:2024 EMNLP User Inference Attacks on Large Language Models
  • MySQL表的内外连接