Docker 玩法

飞牛NAS部署 Flatnotes:极简记事本

引言

在日常工作和生活中,我们经常需要一个轻便、快速、私密的笔记工具。市面上的云笔记虽然功能强大,但往往伴随着数据隐私的隐忧。今天,我将带你使用飞牛NAS(fnOS)的Docker功能部署一款极简记事本——Flatnotes。它没有复杂的功能堆砌,专注于「写」与「找」,所有数据完全由你掌控。

准备工作

在开始部署之前,请确保你的飞牛NAS已经完成以下准备:

  1. 飞牛NAS系统正常运行,且已连接到互联网。
  2. 在应用中心安装了Docker或Docker Compose(推荐安装Docker Compose以简化多容器管理)。
  3. 有一个你希望存放笔记数据的目录。例如,我在/volume1/docker下创建了flatnotes文件夹,并在其中新建data子文件夹用于持久化笔记。
  4. 确保NAS的IP地址固定或使用DDNS,以便后续访问。

部署Flatnotes

我们将通过Docker Compose来部署,这样配置更清晰,也方便后续升级。

第一步:创建docker-compose.yml

SSH登录到你的飞牛NAS,或者直接在文件管理器中进入/volume1/docker/flatnotes目录,新建一个名为docker-compose.yml的文件,内容如下:

version: '3.8'

services:
  flatnotes:
    image: dullage/flatnotes:latest
    container_name: flatnotes
    environment:
      - FLATNOTES_AUTH_TYPE=password
      - FLATNOTES_USERNAME=admin
      - FLATNOTES_PASSWORD=your_strong_password
      - PUID=1000
      - PGID=1000
      - TZ=Asia/Shanghai
    volumes:
      - ./data:/data
    ports:
      - "8080:8080"
    restart: unless-stopped

说明: - FLATNOTES_AUTH_TYPE=password 启用密码认证。 - FLATNOTES_USERNAMEFLATNOTES_PASSWORD 请替换为你自己的登录凭据,密码务必复杂。 - PUIDPGID 通常设为1000,这是飞牛NAS默认非root用户的ID,确保文件权限正确。 - 将宿主机的./data目录映射到容器的/data,笔记文件就保存在这里。 - 端口映射:左侧8080是宿主机端口,你可以根据需要修改(例如改为9090),右侧8080是容器内端口,保持不变。

第二步:启动容器

docker-compose.yml所在目录执行命令:

docker-compose up -d

等待镜像拉取并启动。完成后,可以使用docker ps查看容器是否正常运行。如果一切顺利,你将看到flatnotes容器状态为Up

第三步:访问与初始配置

在浏览器中输入 http://你的飞牛NAS的IP:8080。你会看到一个简洁的登录页面,输入你在docker-compose.yml中设置的用户名和密码即可。

登录后,Flatnotes会呈现一个极简的笔记列表和编辑器。点击右下角的加号即可创建新笔记,支持Markdown语法,所见即所得。

使用技巧

1. 快速搜索

Flatnotes的搜索框位于页面顶部,支持实时全文搜索。输入关键词后,笔记列表会立即过滤出包含该词的内容。对于笔记较多的用户,这比翻找文件夹高效得多。

2. 标签系统

在笔记内容中,你可以使用 #标签名 的格式添加标签。例如,在笔记末尾加上 #工作 #项目A。Flatnotes会自动提取标签,并在左侧栏显示标签列表,点击即可筛选。

3. 数据备份

笔记数据全部存储在宿主机/data目录下,每个笔记是一个独立的.md文件。你可以定期将这个目录复制到NAS的其他共享文件夹,或者使用飞牛NAS自带的快照功能进行备份。迁移时,只需将整个data目录复制到新部署的容器映射目录即可。

常见问题

1. 忘记密码怎么办?

SSH登录NAS,进入/volume1/docker/flatnotes目录,编辑docker-compose.yml,修改FLATNOTES_PASSWORD的值,然后执行docker-compose up -d重启容器即可。密码会立即生效。

2. 如何升级版本?

docker-compose.yml所在目录执行:

docker-compose pull
docker-compose up -d

这会将镜像更新到最新版本,然后重建容器。数据不会丢失,因为保存在宿主机的data目录中。

3. 能否使用HTTPS访问?

如果你的飞牛NAS已经配置了反向代理(如Nginx或Caddy),可以设置代理将域名指向localhost:8080,并在代理层启用SSL。如果未配置,可以参考官方文档使用Nginx Proxy Manager等工具。

总结

通过以上步骤,你已经成功在飞牛NAS上运行了一个极简但强大的记事本应用。Flatnotes的轻量级设计让它几乎不占用NAS资源,而Markdown编辑和全文搜索功能又足够应对日常笔记需求。最重要的是,你的所有笔记都存储在本地,隐私无忧。如果你厌倦了臃肿的云笔记,不妨试试这个自托管方案,感受数据掌控的自由。

💬 评论区
leave a comment

no comments yet