NAS 部署思源, 多终端同步

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

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 的问题。 但是安卓端还无解,似乎要更改代码,希望后期能改进。

  • 思源笔记

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

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

    22346 引用 • 89416 回帖 • 1 关注
  • 链滴

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

    记录生活,连接点滴

    153 引用 • 3783 回帖 • 1 关注
  • NAS
    19 引用 • 52 回帖 • 3 关注

相关帖子

欢迎来到这里!

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

注册 关于
请输入回帖内容 ...
  • zane0301

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

  • 其他回帖
  • zane0301

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

  • 非常详细的指南,楼主辛苦,感谢!

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

    1 回复
  • fcloud

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

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

    1 回复
  • 查看全部回帖

推荐标签 标签

  • Sym

    Sym 是一款用 Java 实现的现代化社区(论坛/BBS/社交网络/博客)系统平台。

    下一代的社区系统,为未来而构建

    524 引用 • 4601 回帖 • 700 关注
  • PWL

    组织简介

    用爱发电 (Programming With Love) 是一个以开源精神为核心的民间开源爱好者技术组织,“用爱发电”象征开源与贡献精神,加入组织,代表你将遵守组织的“个人开源爱好者”的各项条款。申请加入:用爱发电组织邀请帖
    用爱发电组织官网:https://programmingwithlove.stackoverflow.wiki/

    用爱发电组织的核心驱动力:

    • 遵守开源守则,体现开源&贡献精神:以分享为目的,拒绝非法牟利。
    • 自我保护:使用适当的 License 保护自己的原创作品。
    • 尊重他人:不以各种理由、各种漏洞进行未经允许的抄袭、散播、洩露;以礼相待,尊重所有对社区做出贡献的开发者;通过他人的分享习得知识,要留下足迹,表示感谢。
    • 热爱编程、热爱学习:加入组织,热爱编程是首当其要的。我们欢迎热爱讨论、分享、提问的朋友,也同样欢迎默默成就的朋友。
    • 倾听:正确并恳切对待、处理问题与建议,及时修复开源项目的 Bug ,及时与反馈者沟通。不抬杠、不无视、不辱骂。
    • 平视:不诋毁、轻视、嘲讽其他开发者,主动提出建议、施以帮助,以和谐为本。只要他人肯努力,你也可能会被昔日小看的人所超越,所以请保持谦虚。
    • 乐观且活跃:你的努力决定了你的高度。不要放弃,多年后回头俯瞰,才会发现自己已经成就往日所仰望的水平。积极地将项目开源,帮助他人学习、改进,自己也会获得相应的提升、成就与成就感。
    1 引用 • 487 回帖
  • OnlyOffice
    4 引用 • 3 关注
  • TextBundle

    TextBundle 文件格式旨在应用程序之间交换 Markdown 或 Fountain 之类的纯文本文件时,提供更无缝的用户体验。

    1 引用 • 2 回帖 • 48 关注
  • Mobi.css

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

    1 引用 • 6 回帖 • 733 关注
  • 书籍

    宋真宗赵恒曾经说过:“书中自有黄金屋,书中自有颜如玉。”

    77 引用 • 390 回帖
  • Sublime

    Sublime Text 是一款可以用来写代码、写文章的文本编辑器。支持代码高亮、自动完成,还支持通过插件进行扩展。

    10 引用 • 5 回帖
  • CloudFoundry

    Cloud Foundry 是 VMware 推出的业界第一个开源 PaaS 云平台,它支持多种框架、语言、运行时环境、云平台及应用服务,使开发人员能够在几秒钟内进行应用程序的部署和扩展,无需担心任何基础架构的问题。

    5 引用 • 18 回帖 • 167 关注
  • OpenShift

    红帽提供的 PaaS 云,支持多种编程语言,为开发人员提供了更为灵活的框架、存储选择。

    14 引用 • 20 回帖 • 633 关注
  • 爬虫

    网络爬虫(Spider、Crawler),是一种按照一定的规则,自动地抓取万维网信息的程序。

    106 引用 • 275 回帖
  • Telegram

    Telegram 是一个非盈利性、基于云端的即时消息服务。它提供了支持各大操作系统平台的开源的客户端,也提供了很多强大的 APIs 给开发者创建自己的客户端和机器人。

    5 引用 • 35 回帖 • 1 关注
  • Kubernetes

    Kubernetes 是 Google 开源的一个容器编排引擎,它支持自动化部署、大规模可伸缩、应用容器化管理。

    110 引用 • 54 回帖
  • C

    C 语言是一门通用计算机编程语言,应用广泛。C 语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。

    85 引用 • 165 回帖 • 1 关注
  • 职场

    找到自己的位置,萌新烦恼少。

    127 引用 • 1705 回帖 • 1 关注
  • Markdown

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

    167 引用 • 1513 回帖
  • 开源

    Open Source, Open Mind, Open Sight, Open Future!

    408 引用 • 3574 回帖
  • 阿里云

    阿里云是阿里巴巴集团旗下公司,是全球领先的云计算及人工智能科技公司。提供云服务器、云数据库、云安全等云计算服务,以及大数据、人工智能服务、精准定制基于场景的行业解决方案。

    89 引用 • 345 回帖
  • Mac

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

    166 引用 • 595 回帖
  • FFmpeg

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

    23 引用 • 32 回帖
  • SendCloud

    SendCloud 由搜狐武汉研发中心孵化的项目,是致力于为开发者提供高质量的触发邮件服务的云端邮件发送平台,为开发者提供便利的 API 接口来调用服务,让邮件准确迅速到达用户收件箱并获得强大的追踪数据。

    2 引用 • 8 回帖 • 483 关注
  • 架构

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

    142 引用 • 442 回帖
  • Windows

    Microsoft Windows 是美国微软公司研发的一套操作系统,它问世于 1985 年,起初仅仅是 Microsoft-DOS 模拟环境,后续的系统版本由于微软不断的更新升级,不但易用,也慢慢的成为家家户户人们最喜爱的操作系统。

    222 引用 • 473 回帖
  • 脑图

    脑图又叫思维导图,是表达发散性思维的有效图形思维工具 ,它简单却又很有效,是一种实用性的思维工具。

    26 引用 • 84 回帖
  • 旅游

    希望你我能在旅途中找到人生的下一站。

    90 引用 • 899 回帖
  • Flume

    Flume 是一套分布式的、可靠的,可用于有效地收集、聚合和搬运大量日志数据的服务架构。

    9 引用 • 6 回帖 • 629 关注
  • 安装

    你若安好,便是晴天。

    132 引用 • 1184 回帖
  • BAE

    百度应用引擎(Baidu App Engine)提供了 PHP、Java、Python 的执行环境,以及云存储、消息服务、云数据库等全面的云服务。它可以让开发者实现自动地部署和管理应用,并且提供动态扩容和负载均衡的运行环境,让开发者不用考虑高成本的运维工作,只需专注于业务逻辑,大大降低了开发者学习和迁移的成本。

    19 引用 • 75 回帖 • 641 关注