群晖 DSM7.1.1 docker 部署思源笔记 V2.5.4,成功映射工作目录
-
我的群晖是 DSM7.1.1 版本,之前部署思源笔记,漏了设置 workspace 目录一项,结果 docker 目录下一片空白,这次要升级思源笔记 V2.5.4 版本,就想把这个问题解决了。因为如果将思源笔记 workspace 映射到共享文件夹,每次更新思源笔记的时候就不再需要先导出 data 目录,更新后再导入 data,而是直接下载 latest 的映像后,重置容器即可完成更新,更新后笔记数据都还在。
- 经过一个小时的折腾,终于成功把思源的 workspace 映射到共享文件夹 docker/siyuan/目录。
-
查了网上很多关于群晖部署思源笔记的文章,都是对应思源的旧版本,用的命令在部署思源笔记 V2.5.4 时总不成功,而我又不想用 SSH 命令,于是查阅了 GitHub 上面的原文:
-
- Entrypoint
The entry point is set when building the Docker image: ENTRYPOINT ["/opt/siyuan/kernel" ], use docker run b3log/siyuan with parameters to start:
- --workspace specifies the workspace folder path, mounted to the container via -v on the host
More parameters can refer to --help. The following is an example of a startup command: docker run -v workspace_dir_host:workspace_dir_container -p 6806:6806 b3log/siyuan --workspace=workspace_dir_container
- workspace_dir_host: the workspace folder path on the host
- workspace_dir_container: The path of the workspace folder in the container, which is the same as specified in --workspace
To simplify, it is recommended to configure the workspace folder path to be consistent on the host and container, such as: workspace_dir_host and workspace_dir_container are configured as /siyuan/workspace, the corresponding startup commands is: docker run -v /siyuan/workspace:/siyuan/workspace -p 6806:6806 -u 1000:1000 b3log/siyuan --workspace=/siyuan/workspace/.
-
读完之后终于了解用 SSH 命令和群晖 Docker 创建容器时录入命令的区别。我把上文中最后一段命令摘出来:docker run -v /siyuan/workspace:/siyuan/workspace -p 6806:6806 -u 1000:1000 b3log/siyuan --workspace=/siyuan/workspace/。
-
然后将这段命令逐句对应到群晖的操作:
- -v /siyuan/workspace:/siyuan/workspace 这句命令就是指定映射的共享文件夹。
- -p 6806:6806 这句命令就是指定端口,这个比较简单。
- -u 1000:1000 这句命令是给共享文件夹 everyone 的完全控制权,在 filestasion 里操作,先在 docker 下新建文件夹 siyuan,然后打开 docker/siyuan 的属性,在权限中新增 everyone 的完全控制权。
- b3log/siyuan 这句就是在新增容器的时候选择已经下载的映像文件 b3log/siyuan:latest。
- 备注一下,要事先在 docker 的注册表中搜索 siyuan,并下载 b3log/siyuan 下的 latest 版本(这里就是 2.5.4 版本),下载后可以在 docker 的映像中看到。
- 备注一下,要事先在 docker 的注册表中搜索 siyuan,并下载 b3log/siyuan 下的 latest 版本(这里就是 2.5.4 版本),下载后可以在 docker 的映像中看到。
- --workspace=/siyuan/workspace/ 这句命令就是在创建容器时在高级设置中,“执行命令”中输入“-workspace /siyuan/workspace/”,注意群晖 docker 中的命令与 SSH 中命令格式不同。还有一点需要注意的,因为这句命令中有 workspace 的目录,所以我先在 docker/siyuan/下新建了 workspace 目录。
- -v /siyuan/workspace:/siyuan/workspace 这句命令就是指定映射的共享文件夹。
-
好了,到此就可以保存、开启容器,这时就可以看到 data 目录出现在 docker/siyuan/workspace/下面了。
-
容器也正常工作了。
-
打开浏览器,输入群晖地址:6806(端口号),就可以正常使用思源笔记了。
-
-
今天更新到思源笔记 v2.5.5,不再需要导出 data 目录。之前没有将思源笔记 workspace 映射到共享文件夹,还需要先导出 data 目录,更新后再导入 data。现在只需要 2 个步骤:
- 在 docker 注册表中下载 siyuan 的 latest 版本
- 停止 siyuan 容器,并重置,重置时会提示数据全会被删除,选确定。
- 重置后启动容器,在浏览器中登录思源笔记,可以看到之前笔记的数据都在。
- 在 docker 注册表中下载 siyuan 的 latest 版本
-
有个小问题,为什么我的思源笔记不能导出 word?请大伙不吝赐教,谢谢!
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于