Files
appstore/apps/fast-note-sync-service/README.md
T

5.1 KiB

Fast Note Sync Service

产品介绍

Fast Note Sync Service 是一个面向 Obsidian 的高性能、低延迟笔记同步服务,提供 Web 管理面板、REST API、WebSocket 同步、附件同步和多端配置同步。

本应用使用上游项目维护的 Docker Hub 官方镜像 haierkeys/fast-note-sync-service。上游项目采用 Apache-2.0 许可证,默认使用 SQLite,不需要 Redis、MySQL、PostgreSQL、Docker Socket 或特权权限。

主要功能

  • Obsidian 笔记、附件和 .obsidian 配置多端同步
  • Web 管理面板、REST API 和 WebSocket 接口
  • 支持笔记历史、回收站、分享、Git 自动化和多存储备份
  • 支持 MCP,可供兼容的 AI 客户端访问笔记和附件

上游来源

镜像同时声明了 9001 端口,但上游 README 的默认 compose 只映射 9000。本应用遵循该单服务部署路径,不默认暴露 9001

安全与权限

  • 上游镜像中的主进程默认以容器内 root 用户运行。
  • 本应用不使用 privileged、Docker Socket、host network、设备映射或额外 Linux capabilities。
  • 容器只绑定安装表单指定的存储和配置目录,请勿把系统目录、密钥目录或其他敏感宿主路径填入 APP_DATA_DIRAPP_CONFIG_DIR
  • 上游镜像的系统库和 Go 运行时可能包含镜像扫描器报告的已知 High / Critical 漏洞。请及时更新应用,仅向可信网络开放,并在升级前核对上游安全修复说明。

访问说明

  • 安装完成后访问 http://<服务器IP>:<PANEL_APP_PORT_HTTP>
  • 首次访问时按页面提示注册管理员账号,然后在管理面板中生成客户端插件配置。
  • Obsidian 客户端需要安装上游的 Obsidian Fast Note Sync Plugin
  • 如通过反向代理或公网使用,建议启用 HTTPS,并按上游文档配置可信代理和外部访问地址。

数据持久化

目录变量 容器目录 内容
APP_DATA_DIR /fast-note-sync/storage SQLite 数据库、笔记附件、日志、索引和备份
APP_CONFIG_DIR /fast-note-sync/config config.yaml 等应用配置

默认配置使用 SQLite,数据库文件位于 storage/database/db.sqlite3。升级或卸载前请备份 APP_DATA_DIRAPP_CONFIG_DIR;卸载应用不会主动删除这两个 bind mount 目录。

配置说明

常用配置位于 APP_CONFIG_DIR/config.yaml。应用的数据库类型、外部访问地址、注册开关、全文检索、OIDC、备份和存储后端等高级选项由该配置文件管理,本应用安装表单只暴露经过验证的端口、时区和持久化目录。

上游支持 SQLite、MySQL 和 PostgreSQL,但当前官方 Docker compose 默认使用 SQLite,且外部数据库需要编辑 config.yaml 并完成应用侧配置,因此没有在安装表单中虚构或强制添加数据库 runtime 选择器。

升级说明

  • 版本升级前请备份 APP_DATA_DIRAPP_CONFIG_DIR,并阅读上游 release notes。
  • 不要在应用运行时直接复制 SQLite 数据库目录;如需迁移,请先停止应用并同时保留 SQLite 的 -wal-shm 文件。
  • 上游客户端插件和服务端版本应保持兼容,升级后请重新检查客户端同步和 WebSocket 连接。

Introduction

Fast Note Sync Service is a high-performance, low-latency note synchronization service for Obsidian. It provides a web admin panel, REST API, WebSocket synchronization, attachment sync, and configuration sync.

The package uses the upstream-maintained official Docker Hub image haierkeys/fast-note-sync-service. The default deployment uses SQLite and does not require Redis, MySQL, PostgreSQL, Docker Socket, or privileged permissions.

Features

  • Multi-device synchronization for Obsidian notes, attachments, and configuration
  • Web administration, REST API, WebSocket synchronization, and MCP support
  • SQLite-based default deployment with no external database or cache dependency
  • Persistent storage and configuration directories exposed through the 1Panel form

Security and permissions

The upstream process runs as root inside the container. This package does not grant privileged mode, Docker Socket, host networking, device access, or extra Linux capabilities. Only use dedicated application directories for the two bind mounts.

The upstream image's system libraries and Go runtime may include known High or Critical vulnerabilities reported by image scanners. Keep the app updated, limit access to trusted networks, and review upstream security fixes before upgrading.

References