群晖 DSM7.1.1 docker 部署思源笔记 2.5.4,成功映射工作目录

本贴最后更新于 840 天前,其中的信息可能已经渤澥桑田

群晖 DSM7.1.1 docker 部署思源笔记 V2.5.4,成功映射工作目录

  • 我的群晖是 DSM7.1.1 版本,之前部署思源笔记,漏了设置 workspace 目录一项,结果 docker 目录下一片空白,这次要升级思源笔记 V2.5.4 版本,就想把这个问题解决了。因为如果将思源笔记 workspace 映射到共享文件夹,每次更新思源笔记的时候就不再需要先导出 data 目录,更新后再导入 data,而是直接下载 latest 的映像后,重置容器即可完成更新,更新后笔记数据都还在。

    image202212171503566kmlatp.png

    • 经过一个小时的折腾,终于成功把思源的 workspace 映射到共享文件夹 docker/siyuan/目录。

    workspace 映射 20221217143804iu1ytjd.png

  • 查了网上很多关于群晖部署思源笔记的文章,都是对应思源的旧版本,用的命令在部署思源笔记 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/。

    • 然后将这段命令逐句对应到群晖的操作:

      1. -v /siyuan/workspace:/siyuan/workspace 这句命令就是指定映射的共享文件夹。
        • image20221217144610kf8n0r8.png
      2. -p 6806:6806 这句命令就是指定端口,这个比较简单。
        • image2022121714464574476xg.png
      3. -u 1000:1000 这句命令是给共享文件夹 everyone 的完全控制权,在 filestasion 里操作,先在 docker 下新建文件夹 siyuan,然后打开 docker/siyuan 的属性,在权限中新增 everyone 的完全控制权。
        • image20221217144823rogrrft.png
        • image202212171449415flbw3m.png
      4. b3log/siyuan 这句就是在新增容器的时候选择已经下载的映像文件 b3log/siyuan:latest。
        • image20221217145108y7wwww7.png
        • 备注一下,要事先在 docker 的注册表中搜索 siyuan,并下载 b3log/siyuan 下的 latest 版本(这里就是 2.5.4 版本),下载后可以在 docker 的映像中看到。
          • image20221217150847ri1wcjx.png
          • image202212171509565nvifgj.png
      5. --workspace=/siyuan/workspace/ 这句命令就是在创建容器时在高级设置中,“执行命令”中输入“-workspace /siyuan/workspace/”,注意群晖 docker 中的命令与 SSH 中命令格式不同。还有一点需要注意的,因为这句命令中有 workspace 的目录,所以我先在 docker/siyuan/下新建了 workspace 目录。
        • image20221217145235e2twkvl.png
        • image2022121714541456oyvtz.png
    • 好了,到此就可以保存、开启容器,这时就可以看到 data 目录出现在 docker/siyuan/workspace/下面了。

      • workspace 映射.png
    • 容器也正常工作了。

      • image20221217145942vccw41j.png
    • 打开浏览器,输入群晖地址:6806(端口号),就可以正常使用思源笔记了。

  • 今天更新到思源笔记 v2.5.5,不再需要导出 data 目录。之前没有将思源笔记 workspace 映射到共享文件夹,还需要先导出 data 目录,更新后再导入 data。现在只需要 2 个步骤:

    • 在 docker 注册表中下载 siyuan 的 latest 版本
      • image.png
    • 停止 siyuan 容器,并重置,重置时会提示数据全会被删除,选确定。
      • image.png
    • 重置后启动容器,在浏览器中登录思源笔记,可以看到之前笔记的数据都在。
  • 有个小问题,为什么我的思源笔记不能导出 word?请大伙不吝赐教,谢谢!

    • image.png

  ‍

  • 思源笔记

    思源笔记是一款隐私优先的个人知识管理系统,支持完全离线使用,同时也支持端到端加密同步。

    融合块、大纲和双向链接,重构你的思维。

    24987 引用 • 102933 回帖
4 操作
szftjames 在 2022-12-21 12:05:42 更新了该帖
szftjames 在 2022-12-21 12:00:14 更新了该帖
szftjames 在 2022-12-17 21:27:26 更新了该帖
szftjames 在 2022-12-17 21:18:38 更新了该帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • docker 思源镜像更新后,打开网页思源它会被重置,又要重新登录加载,老哥遇到过没有?

    1 回复
  • 其他回帖
  • NeptuneBB

    感谢楼主,折腾了半天原来是权限没设置正确

  • 这个可以有,家里的群晖目前还是 6.2 呢,等过年回家给升级到 7 版本后

    也折腾下安装个思源的 docker 版本试试

  • XUNZHAOPDJ

    感谢大佬,终于成功映射了工作目录。一点点笔误,第五点里面应该是“-workspace /siyuan/workspace/”多了一个 d。再次感谢大佬!!!!

    1 回复
  • 查看全部回帖

推荐标签 标签

  • Hadoop

    Hadoop 是由 Apache 基金会所开发的一个分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。

    88 引用 • 122 回帖 • 618 关注
  • Access
    1 引用 • 3 回帖 • 3 关注
  • ReactiveX

    ReactiveX 是一个专注于异步编程与控制可观察数据(或者事件)流的 API。它组合了观察者模式,迭代器模式和函数式编程的优秀思想。

    1 引用 • 2 回帖 • 176 关注
  • 星云链

    星云链是一个开源公链,业内简单的将其称为区块链上的谷歌。其实它不仅仅是区块链搜索引擎,一个公链的所有功能,它基本都有,比如你可以用它来开发部署你的去中心化的 APP,你可以在上面编写智能合约,发送交易等等。3 分钟快速接入星云链 (NAS) 测试网

    3 引用 • 16 回帖
  • 小说

    小说是以刻画人物形象为中心,通过完整的故事情节和环境描写来反映社会生活的文学体裁。

    31 引用 • 108 回帖
  • Android

    Android 是一种以 Linux 为基础的开放源码操作系统,主要使用于便携设备。2005 年由 Google 收购注资,并拉拢多家制造商组成开放手机联盟开发改良,逐渐扩展到到平板电脑及其他领域上。

    335 引用 • 324 回帖
  • 禅道

    禅道是一款国产的开源项目管理软件,她的核心管理思想基于敏捷方法 scrum,内置了产品管理和项目管理,同时又根据国内研发现状补充了测试管理、计划管理、发布管理、文档管理、事务管理等功能,在一个软件中就可以将软件研发中的需求、任务、bug、用例、计划、发布等要素有序的跟踪管理起来,完整地覆盖了项目管理的核心流程。

    6 引用 • 15 回帖 • 31 关注
  • Postman

    Postman 是一款简单好用的 HTTP API 调试工具。

    4 引用 • 3 回帖 • 1 关注
  • OpenCV
    15 引用 • 36 回帖 • 1 关注
  • MyBatis

    MyBatis 本是 Apache 软件基金会 的一个开源项目 iBatis,2010 年这个项目由 Apache 软件基金会迁移到了 google code,并且改名为 MyBatis ,2013 年 11 月再次迁移到了 GitHub。

    173 引用 • 414 回帖 • 367 关注
  • SQLite

    SQLite 是一个进程内的库,实现了自给自足的、无服务器的、零配置的、事务性的 SQL 数据库引擎。SQLite 是全世界使用最为广泛的数据库引擎。

    5 引用 • 7 回帖 • 2 关注
  • sts
    2 引用 • 2 回帖 • 224 关注
  • Mac

    Mac 是苹果公司自 1984 年起以“Macintosh”开始开发的个人消费型计算机,如:iMac、Mac mini、Macbook Air、Macbook Pro、Macbook、Mac Pro 等计算机。

    169 引用 • 595 回帖
  • Python

    Python 是一种面向对象、直译式电脑编程语言,具有近二十年的发展历史,成熟且稳定。它包含了一组完善而且容易理解的标准库,能够轻松完成很多常见的任务。它的语法简捷和清晰,尽量使用无异义的英语单词,与其它大多数程序设计语言使用大括号不一样,它使用缩进来定义语句块。

    556 引用 • 675 回帖
  • 思源笔记

    思源笔记是一款隐私优先的个人知识管理系统,支持完全离线使用,同时也支持端到端加密同步。

    融合块、大纲和双向链接,重构你的思维。

    24987 引用 • 102931 回帖
  • 微软

    微软是一家美国跨国科技公司,也是世界 PC 软件开发的先导,由比尔·盖茨与保罗·艾伦创办于 1975 年,公司总部设立在华盛顿州的雷德蒙德(Redmond,邻近西雅图)。以研发、制造、授权和提供广泛的电脑软件服务业务为主。

    8 引用 • 44 回帖
  • Firefox

    Mozilla Firefox 中文俗称“火狐”(正式缩写为 Fx 或 fx,非正式缩写为 FF),是一个开源的网页浏览器,使用 Gecko 排版引擎,支持多种操作系统,如 Windows、OSX 及 Linux 等。

    7 引用 • 30 回帖 • 388 关注
  • Hibernate

    Hibernate 是一个开放源代码的对象关系映射框架,它对 JDBC 进行了非常轻量级的对象封装,使得 Java 程序员可以随心所欲的使用对象编程思维来操纵数据库。

    39 引用 • 103 回帖 • 722 关注
  • Latke

    Latke 是一款以 JSON 为主的 Java Web 框架。

    71 引用 • 535 回帖 • 825 关注
  • 友情链接

    确认过眼神后的灵魂连接,站在链在!

    24 引用 • 373 回帖 • 1 关注
  • HTML

    HTML5 是 HTML 下一个的主要修订版本,现在仍处于发展阶段。广义论及 HTML5 时,实际指的是包括 HTML、CSS 和 JavaScript 在内的一套技术组合。

    108 引用 • 295 回帖 • 1 关注
  • 自由行
    3 关注
  • 大疆创新

    深圳市大疆创新科技有限公司(DJI-Innovations,简称 DJI),成立于 2006 年,是全球领先的无人飞行器控制系统及无人机解决方案的研发和生产商,客户遍布全球 100 多个国家。通过持续的创新,大疆致力于为无人机工业、行业用户以及专业航拍应用提供性能最强、体验最佳的革命性智能飞控产品和解决方案。

    2 引用 • 14 回帖
  • RabbitMQ

    RabbitMQ 是一个开源的 AMQP 实现,服务器端用 Erlang 语言编写,支持多种语言客户端,如:Python、Ruby、.NET、Java、C、PHP、ActionScript 等。用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现不俗。

    49 引用 • 60 回帖 • 341 关注
  • Linux

    Linux 是一套免费使用和自由传播的类 Unix 操作系统,是一个基于 POSIX 和 Unix 的多用户、多任务、支持多线程和多 CPU 的操作系统。它能运行主要的 Unix 工具软件、应用程序和网络协议,并支持 32 位和 64 位硬件。Linux 继承了 Unix 以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

    951 引用 • 944 回帖
  • JWT

    JWT(JSON Web Token)是一种用于双方之间传递信息的简洁的、安全的表述性声明规范。JWT 作为一个开放的标准(RFC 7519),定义了一种简洁的,自包含的方法用于通信双方之间以 JSON 的形式安全的传递信息。

    20 引用 • 15 回帖 • 19 关注
  • Markdown

    Markdown 是一种轻量级标记语言,用户可使用纯文本编辑器来排版文档,最终通过 Markdown 引擎将文档转换为所需格式(比如 HTML、PDF 等)。

    169 引用 • 1527 回帖