首先什么是Vimflowy?你可能听过大名鼎鼎的Workflowy,它是一款在线的大纲视图的笔记软件(也叫子弹笔记?)。打开Workflowy的主页面就可以看见Demo。而Vimflowy则是Jeff Wu开发的一款类似Workflowy的笔记工具,特色是支持类似Vim的键操作。

打开https://vimflowy.netlify.com可以在线体验vimflowy哦

Workflowy可以免费使用,但是有一定的限额,月配额是250条。Vimflowy则是开源的,可以自己搭建服务器运行。本文就是介绍如何在Windows上使用Docker来搭建Vimflowy服务。

假设你在Windows上已经安装好了Docker,接下来就十分简单了。

按照DEPLOYMENT的说明,在命令行执行


docker pull vimflowy/vimflowy

docker volume create vimflowy-db

docker run  -e VIMFLOWY_PASSWORD=mypassword --name vimflowy --mount source=vimflowy-db,target=/app/db -p 127.0.0.1:3000:3000 --restart unless-stopped vimflowy/vimflowy

上面的端口映射需要注意一下,根据vimflowy/Dockerfile ,在容器内Vimflowy开启IP地址和端口是0.0.0.0:3000,所以要把这个端口应该到容器宿主,也就是Windows地址和端口。这里端口我依然选择3000,但是地址我选择127.0.0.1,即本地环回地址,只能在本机上使用。

参考Docker EXPOSE a port only to Host

创建好了vimflowy的docker实例,可以使用下面的命令来查看:

docker container ls

在我的电脑上结果为:

CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                      NAMES
4c74bc45fed1        vimflowy/vimflowy   "/bin/sh -c 'node /a…"   3 minutes ago       Up 2 minutes        127.0.0.1:3000->3000/tcp   vimflowy

如果要停止和删除服务,可以使用下面的命令

docker container stop 4c74bc45fed1
docker container rm 4c74bc45fed1

这样一来,本地的Vimflowy服务就搭建好了。在Chrome里面输入localhost:3000试着看能不能访问吧!

提示: 在Chrome的菜单中选择More Tools > Create shorcut, 勾上Open as window然后点击Create,可以创建一个Vimflowy的快捷方式,运行起来跟桌面程序很像。