NAS 部署思源, 多终端同步

本贴最后更新于 548 天前,其中的信息可能已经时移世异

NAS docker 上安装最新的 docker 镜像。如果被墙,可以通过 pull 命令拉取,这里就不赘述了。

下面讲下如何配置镜像。

安装 docker 镜像,配置如图:

image

这里我选择的 host 网络,因为如果选择 bridge,后面配置 WebDav 网络同步将会失败。

image

也可以不选择 “使用高权限执行容器”

image

注意,命令里面填入:-workspace /home/siyuan/Siyuan/ -accessAuthCode xxxxxx, 我安装的版本是 v2.11.4,这里需要添加参数 “-accessAuthCode”,值为一串字符串,这里我用 xxxxx 表示,需要记住,后面登录会用到。另外 workspace 路径为“/home/siyuan/Siyuan",我看有的文章说是 "/siyuan/workspace", 但 docker 启动后,进入 docker 查看,会发现数据实际是存放在"/home/siyuan/Siyuan/"下面。

image

目录 1 是在在 docker 下创建的,注意赋予 Siyuan 文件夹 everyone 权限。目录 2 是 docker 内部的 siyuan 的 wokspace 目录。

image

启动后查看 docker 日志,启动成功。

image

浏览器输入主机 IP:6806, 显示如图,表示部署成功。输入 access code 为之前命令行里面填写的 access code 即可登录。

如果申请了外网域名(关于外网穿透,域名登陆,请自行脑补 😊),需要设置反向代理:控制面板--> 登录门户--> 高级--> 反向代理服务器

image

来源:这里协议我选择的 HTTPS,也可以选择 HTTP,这里我选择 HTTPS,如果选择 HTTPS,需要实现申请证书(关于如何申请证书,请仔细脑补 😉)。主机名为自己申请的域名,端口可以用默认的 6806,这里我设置了不同的端口(需要在路由器上开放该端口)。目的地: 协议选择 HTTP(不知道 siyuan 如何配置 HTTPS 访问,没有去折腾),端口为默认的 6806。

image

另外,如果来源设置的 HTTPS 访问,需要在"自定义标题"里面添加如图名称和值,否则即使域名登录成功了,也会提示报错。

image

之后浏览器输入 https://域名:端口,(注意需要提前安装证书,关于如何安装证书,请自行搜索),端口为来源端口(没有研究如何隐藏端口,应该可以实现,知道的小伙伴可以分享一下),之后输入 accesscode 即可登录。

image

登录后,点击左上角->setting->appearance->Language 可以更改语言。

image

这里配置 webdav,为什么要配置云端同步呢?我是为了手机端或者其它终端通过应用程序或者 app 访问,真正实现多平台,多终端无缝同步。否则,就只能通过浏览器访问,如果出现网络不好情况下,就没法编辑。

填写必要的信息,这里就不讲如何配置 webdav 了。这里需要注意的是,由于似乎 docker 版 Siyuan 不支持非权威 CA,所以,如果你是的 NAS 使用的是非权威 CA,比如通过 Mkcert 生成的证书,如果这里“TLS Verify”选择“Verify”,同步将会失败。所以这里需要将"Verify“改为"Skip"。 安卓 app 也有相同的问题。但 windows 桌面版没有这个问题,操作系统导入的自己的 CA,在 windows 桌面版是可以选择"Verify"的。 不知道后期会不会有改进。

image

如果 webdav 配置没有问题,点击"设置",会自动生成 main 目录,你的所有笔记数据会产生在改目录下。当然也可更改其它目录,点击“添加”即可。

配置完成之后,点击左上角的同步,即可将笔记同步到自己的 webdav 服务器。

之后,在手机端或者 windows 桌面端,做相同的配置。这样就实现了多终端同步。

更新: 关于 docker 端思源不能使用非权威 CA 的问题,折腾了一下,找到如下解决方案。

SSH 登录 NAS,如下命令登录到 Siyuan 容器内部。

image

image

发现 CA 存放在这个目录下:

image

如下命令手动将自己的 CA 拷贝到该目录, 注意文件权限(似乎在创建容器时,需要选择最高权限执行):

image

最后重启容器。 这样可以解决 docker 端 siyuan 使用非权威 CA 的问题。 但是安卓端还无解,似乎要更改代码,希望后期能改进。

  • 思源笔记

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

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

    26125 引用 • 108470 回帖
  • 链滴

    链滴是一个记录生活的地方。

    记录生活,连接点滴

    180 引用 • 3879 回帖 • 2 关注
  • NAS
    19 引用 • 53 回帖 • 3 关注

相关帖子

欢迎来到这里!

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

注册 关于
请输入回帖内容 ...
  • 非常详细的指南,楼主辛苦,感谢!

    咨询一下,docker 部署好后,你在 docker 思源里配置的是 webdav,请问我可以在 docker 的思源里,配置 webdav 的地方选择 S3,和本机 S3 配置一致吗?这样 docker 内的思源和其他电脑端手机端都访问 S3 的同一数据库?

    1 回复
  • zane0301

    你好,不管选 S3 还是 WedDav,只要保证所有终端上配置的信息一致就行了, 这样才能实现同步。

  • ColinY

    最新版的思源笔记关闭了 WebDav 的免费功能,现在楼主您这同步功能是否还可使用?(非 vip)

    1 回复
  • zane0301 via Linux

    你好,我是付费用户,目前使用没有问题。

  • 付了 64 块钱开了同步功能, 现在数据不多, 放在轻牛云上, 等数据多了以后打算自己迁移到自己的群辉 nas 上。

  • fcloud

    请问升级版本,重新部署后,能否不用重新修改语言,登录账号,设置云同步等。

    我之前用的第三方编译版本,只需复制旧版 docker 容器的的配置(可以一键复制)即可。

    1 回复
  • zane0301

    升级思源不需要重新配置。

请输入回帖内容 ...

推荐标签 标签

  • Electron

    Electron 基于 Chromium 和 Node.js,让你可以使用 HTML、CSS 和 JavaScript 构建应用。它是一个由 GitHub 及众多贡献者组成的活跃社区共同维护的开源项目,兼容 Mac、Windows 和 Linux,它构建的应用可在这三个操作系统上面运行。

    15 引用 • 136 回帖
  • Mobi.css

    Mobi.css is a lightweight, flexible CSS framework that focus on mobile.

    1 引用 • 6 回帖 • 765 关注
  • Solo

    Solo 是一款小而美的开源博客系统,专为程序员设计。Solo 有着非常活跃的社区,可将文章作为帖子推送到社区,来自社区的回帖将作为博客评论进行联动(具体细节请浏览 B3log 构思 - 分布式社区网络)。

    这是一种全新的网络社区体验,让热爱记录和分享的你不再感到孤单!

    1443 引用 • 10083 回帖 • 499 关注
  • Linux

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

    954 引用 • 944 回帖
  • OneNote
    1 引用 • 3 回帖
  • Bug

    Bug 本意是指臭虫、缺陷、损坏、犯贫、窃听器、小虫等。现在人们把在程序中一些缺陷或问题统称为 bug(漏洞)。

    76 引用 • 1742 回帖
  • MongoDB

    MongoDB(来自于英文单词“Humongous”,中文含义为“庞大”)是一个基于分布式文件存储的数据库,由 C++ 语言编写。旨在为应用提供可扩展的高性能数据存储解决方案。MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。它支持的数据结构非常松散,是类似 JSON 的 BSON 格式,因此可以存储比较复杂的数据类型。

    91 引用 • 59 回帖 • 4 关注
  • jQuery

    jQuery 是一套跨浏览器的 JavaScript 库,强化 HTML 与 JavaScript 之间的操作。由 John Resig 在 2006 年 1 月的 BarCamp NYC 上释出第一个版本。全球约有 28% 的网站使用 jQuery,是非常受欢迎的 JavaScript 库。

    63 引用 • 134 回帖 • 734 关注
  • Hprose

    Hprose 是一款先进的轻量级、跨语言、跨平台、无侵入式、高性能动态远程对象调用引擎库。它不仅简单易用,而且功能强大。你无需专门学习,只需看上几眼,就能用它轻松构建分布式应用系统。

    9 引用 • 17 回帖 • 642 关注
  • 笔记

    好记性不如烂笔头。

    311 引用 • 794 回帖
  • OAuth

    OAuth 协议为用户资源的授权提供了一个安全的、开放而又简易的标准。与以往的授权方式不同之处是 oAuth 的授权不会使第三方触及到用户的帐号信息(如用户名与密码),即第三方无需使用用户的用户名与密码就可以申请获得该用户资源的授权,因此 oAuth 是安全的。oAuth 是 Open Authorization 的简写。

    36 引用 • 103 回帖 • 36 关注
  • 宕机

    宕机,多指一些网站、游戏、网络应用等服务器一种区别于正常运行的状态,也叫“Down 机”、“当机”或“死机”。宕机状态不仅仅是指服务器“挂掉了”、“死机了”状态,也包括服务器假死、停用、关闭等一些原因而导致出现的不能够正常运行的状态。

    13 引用 • 82 回帖 • 74 关注
  • GitBook

    GitBook 使您的团队可以轻松编写和维护高质量的文档。 分享知识,提高团队的工作效率,让用户满意。

    3 引用 • 8 回帖
  • LaTeX

    LaTeX(音译“拉泰赫”)是一种基于 ΤΕΧ 的排版系统,由美国计算机学家莱斯利·兰伯特(Leslie Lamport)在 20 世纪 80 年代初期开发,利用这种格式,即使使用者没有排版和程序设计的知识也可以充分发挥由 TeX 所提供的强大功能,能在几天,甚至几小时内生成很多具有书籍质量的印刷品。对于生成复杂表格和数学公式,这一点表现得尤为突出。因此它非常适用于生成高印刷质量的科技和数学类文档。

    12 引用 • 59 回帖
  • 服务器

    服务器,也称伺服器,是提供计算服务的设备。由于服务器需要响应服务请求,并进行处理,因此一般来说服务器应具备承担服务并且保障服务的能力。

    125 引用 • 585 回帖
  • BookxNote

    BookxNote 是一款全新的电子书学习工具,助力您的学习与思考,让您的大脑更高效的记忆。

    笔记整理交给我,一心只读圣贤书。

    1 引用 • 1 回帖 • 1 关注
  • 互联网

    互联网(Internet),又称网际网络,或音译因特网、英特网。互联网始于 1969 年美国的阿帕网,是网络与网络之间所串连成的庞大网络,这些网络以一组通用的协议相连,形成逻辑上的单一巨大国际网络。

    98 引用 • 367 回帖
  • Gitea

    Gitea 是一个开源社区驱动的轻量级代码托管解决方案,后端采用 Go 编写,采用 MIT 许可证。

    5 引用 • 16 回帖 • 1 关注
  • 架构

    我们平时所说的“架构”主要是指软件架构,这是有关软件整体结构与组件的抽象描述,用于指导软件系统各个方面的设计。另外还有“业务架构”、“网络架构”、“硬件架构”等细分领域。

    142 引用 • 442 回帖
  • 负能量

    上帝为你关上了一扇门,然后就去睡觉了....努力不一定能成功,但不努力一定很轻松 (° ー °〃)

    89 引用 • 1251 回帖 • 392 关注
  • GitHub

    GitHub 于 2008 年上线,目前,除了 Git 代码仓库托管及基本的 Web 管理界面以外,还提供了订阅、讨论组、文本渲染、在线文件编辑器、协作图谱(报表)、代码片段分享(Gist)等功能。正因为这些功能所提供的便利,又经过长期的积累,GitHub 的用户活跃度很高,在开源世界里享有深远的声望,并形成了社交化编程文化(Social Coding)。

    209 引用 • 2040 回帖
  • 强迫症

    强迫症(OCD)属于焦虑障碍的一种类型,是一组以强迫思维和强迫行为为主要临床表现的神经精神疾病,其特点为有意识的强迫和反强迫并存,一些毫无意义、甚至违背自己意愿的想法或冲动反反复复侵入患者的日常生活。

    15 引用 • 161 回帖 • 1 关注
  • ActiveMQ

    ActiveMQ 是 Apache 旗下的一款开源消息总线系统,它完整实现了 JMS 规范,是一个企业级的消息中间件。

    19 引用 • 13 回帖 • 676 关注
  • FFmpeg

    FFmpeg 是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。

    23 引用 • 32 回帖
  • 大疆创新

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

    2 引用 • 14 回帖 • 1 关注
  • jsoup

    jsoup 是一款 Java 的 HTML 解析器,可直接解析某个 URL 地址、HTML 文本内容。它提供了一套非常省力的 API,可通过 DOM,CSS 以及类似于 jQuery 的操作方法来取出和操作数据。

    6 引用 • 1 回帖 • 494 关注
  • 周末

    星期六到星期天晚,实行五天工作制后,指每周的最后两天。再过几年可能就是三天了。

    14 引用 • 297 回帖