个人知识管理平台SilverBullet

什么是 SilverBullet ?

SilverBullet 是一个可扩展的开源个人知识平台。它的核心是一个干净的基于 markdown 的写作/笔记应用程序,它将您的页面(笔记)作为普通的 markdown 文件存储在一个称为 space 的文件夹中。可以使用 [[link to other page]] 语法交叉链接页面。这使它成为 个人知识管理的简单工具。然而,一旦您利用了它的各种扩展(称为插件),它就会更像是一个知识平台,允许您以您特有的创造性方式注释、组合和查询您积累的知识。

安装

在群晖上以 Docker 方式安装。

在注册表中搜索 silverbullet ,选择第二个 zefhemel/silverbullet,版本选择 latest

本文写作时, latest 版本对应为 0.7.3

docker 文件夹中,创建一个新文件夹 silverbullet,并在其中建一个子文件夹 space

文件夹 装载路径 说明
docker/silverbullet/space /space 存放笔记文件等

端口

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

1
2
# 查看端口占用
netstat -tunlp | grep 端口号
本地端口 容器端口
3036 3000

环境

可变
SB_USER 设置用户和密码,例如:admin:admin

命令行安装

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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# 新建文件夹 silverbullet 和 子目录
mkdir -p /volume1/docker/silverbullet/space

# 进入 silverbullet 目录
cd /volume1/docker/silverbullet

# 运行容器
docker run -d \
--restart unless-stopped \
--name silverbullet \
-p 3036:3000 \
-v $(pwd)/space:/space \
-e SB_USER=admin:admin \
zefhemel/silverbullet

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

1
2
3
4
5
6
7
8
9
10
11
12
13
version: '3'

services:
silverbullet:
image: zefhemel/silverbullet
container_name: silverbullet
restart: unless-stopped
ports:
- 3036:3000
volumes:
- ./space:/space
environment:
- SB_USER=admin:admin

然后执行下面的命令

1
2
3
4
5
6
7
8
9
10
# 新建文件夹 silverbullet 和 子目录
mkdir -p /volume1/docker/silverbullet/space

# 进入 silverbullet 目录
cd /volume1/docker/silverbullet

# 将 docker-compose.yml 放入当前目录

# 一键启动
docker-compose up -d

运行

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

是不是有点原生态的感觉?因为作者是 UI 极简主义者,是一名具有黑客心态的人

登录成功后的索引页面

导入核心库

Import Core Library 按钮开始导入,这将为您提供几个有用的页面、斜杠命令、页面模板和小部件,如目录和链接提及。点 Ok 确认就开始更新了

页面选择器

点击右上角的页面选择器(书籍图标)图标,或点击 Cmd-kMac)或 Ctrl-kLinuxWindows)打开页面选择器。

输入 / 可以创建页面

键入不存在的页面的名称就可以创建它

而文件夹是通过在名称中加斜线(/)隐式创建的,例如:我的文件夹/我的页面,如果文件夹不存在,会被自动创建

命令面板

Obsidian 或者 Visual Studio Code的用户,应该对 命令面板 不会陌生

单击右上角的终端图标(右上角),或点击 Cmd-/Mac)或Ctrl-/LinuxWindows),或同时用 3 个手指点击屏幕(在移动设备上)可以打开命令面板。从这里,您可以运行各种有用的和可能不太有用的命令。

客户端模式

SilverBullet 目前支持两种客户端模式,可以通过切换顶部栏中的切换按钮在这两种模式之间切换。 您可以随时切换模式,并在不同的设备上使用不同的模式。

  1. Online mode(默认):将所有内容保留在服务器上,仅按需将内容加载到客户端;
  2. Synced mode(支持脱机):将所有内容同步到客户端;

插件

SilverBullet 在其核心功能上非常简洁,大部分的强大功能来自于 插件

官方文档上列举了一些核心插件和第三方插件,地址:https://silverbullet.md/Plugs

其中核心插件默认是和 SilverBullet 一起分发,并自动启用的,只有第三方插件需要安装

TreeView 为例,点开进入详情

找到 URI 地址

打开命令面板,找到 Plugs: Add

输入插件的 URI 地址

Ok 开始安装,完成之后

在命令面输入 tree ,会定位到 Tree View: Toggle,以后可以用快捷键

现在整个目录就列在了左侧,看起来清晰多了

在命令面板中启用 Markdown Preview: Toggle

这样会看起来更方便一些

中文也是没问题的

参考文档

silverbulletmd/silverbullet: Markdown as a platform
地址:https://github.com/silverbulletmd/silverbullet

SilverBullet
地址:https://silverbullet.md/

Install/Docker
地址:https://silverbullet.md/Install/Docker