群晖 Docker 部署 思源笔记

本贴最后更新于 446 天前,其中的信息可能已经事过境迁

群晖 Docker 部署 思源笔记

官方 docker 镜像参考文档:
https://registry.hub.docker.com/r/b3log/siyuan

参数配置参考
https://ld246.com/article/1630063506550

设置中文参考:
https://ld246.com/article/1632652377565

个人机器:群晖 920 DSM 7.x

全程使用 ssh 进行部署,对个人来说比较方便,因此基于此部署:

# 使用容器卷的方式
# 创建容器卷:siyuan
docker volume create siyuan

# 查看容器卷信息, 可以查询到容器卷的位置,目的是设置文件夹权限,不然直接运行容器会报权限错误
docker volume inspect siyuan

# 找到文件对应路径,根据官方文档说明,修改文件夹权限
chown -R 1000:1000 /volume2/@docker/volumes/siyuan


# 创建容器命令说明,主要参考官方仓库下方说明
docker run \
-v siyuan:/siyuan/workspace \ # 上方创建的容器卷:映射容器内思源笔记的数据存放路径,与workspace保持一致
-p 6806:6806 \  # 群晖对外访问的端口(可以自定义):思源笔记容器内起的端口
-u 1000:1000 \  # 官方文档中,使用普通用户创建
-e LANG=zh_CN.UTF-8 \  # 参考链接中,设置默认为中文(主要是为了说明文档,还是中文方便一点)
-e LC_ALL=zh_CN.UTF-8 \
--restart=always \  # 容器自动重启
-d --name="siyuanNote" \ # -d:容器后台启动,--name 设置容器名称
b3log/siyuan \  # 使用的镜像源名称
--workspace=/siyuan/workspace/  # 官方设置的容器内的数据存放路径,要与上方保持一致

# 创建容器 Demodocker run -v siyuan:/siyuan/workspace \
-p 6806:6806 \
-u 1000:1000 \
-e LANG=zh_CN.UTF-8 \
-e LC_ALL=zh_CN.UTF-8 \
--restart=always \
-d --name="siyuanNote" \
b3log/siyuan \
--workspace=/siyuan/workspace/

查看容器中的日志:

命令格式:docker logs -f --tail 100 [容器名称],Demo docker logs -f --tail 100 siyuanNote

未设置文件夹权限时,运行提示的错误:

image.png

安装成功后,群晖 docker 中显示的日志:

image.png

image.png

  • 思源笔记

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

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

    20160 引用 • 77748 回帖

相关帖子

欢迎来到这里!

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

注册 关于
请输入回帖内容 ...
  • 根据 LZ 的内容,咨询了下 AI,制作了 Docker Compose 文件

    version: '3'
    services:
      siyuan:
        image: b3log/siyuan
        container_name: siyuanNote
        restart: always
        ports: 
          - 6806:6806
        environment:
          LANG: zh_CN.UTF-8
          LC_ALL: zh_CN.UTF-8
          ACCESS_AUTH_CODE: 这里是打开网页时所需的密码
        volumes:
          - siyuan:/siyuan/workspace
        user: 1000:1000
    volumes:
      siyuan:
    

    我个人只会用 Portainer 部署:

    image.png

    1 回复
  • 其他回帖
  • weng8858

    思源的的权鉴要放到启动参数里(command),不是放在变量里的(environment)

  • xt12321 1
    作者

    参考 github 上的一个 issue 以及代码,修改为下面这样配置 docker-compose.yml 文件可以 (本地 ubuntu 上 docker-compose 成功运行):

    version: '3'
    services:
      siyuan:
        image: b3log/siyuan
        container_name: siyuanNote
        restart: always
        ports: 
          - 6806:6806
        command: [--accessAuthCode=123456,--lang=zh_CN]
        volumes:
          - siyuan:/siyuan/workspace
        user: 1000:1000
    volumes:
      siyuan:
    
    

    项目代码中,参数配置在 kernel/util/working.go 文件,第 62 - 69 行, 代码如下:

    	workspacePath := flag.String("workspace", "", "dir path of the workspace, default to ~/Documents/SiYuan/")
    	wdPath := flag.String("wd", WorkingDir, "working directory of SiYuan")
    	port := flag.String("port", "0", "port of the HTTP server")
    	readOnly := flag.String("readonly", "false", "read-only mode")
    	accessAuthCode := flag.String("accessAuthCode", "", "access auth code")
    	ssl := flag.Bool("ssl", false, "for https and wss")
    	lang := flag.String("lang", "", "zh_CN/zh_CHT/en_US/fr_FR/es_ES")
    	mode := flag.String("mode", "prod", "dev/prod")
    

    image.png

  • 哦,确实没有成功。

    我查了下鉴权是 accessAuthCode。但我改过来也还是不行。让 AI 想了半天也没想出来怎么办。

    2 回复
  • 查看全部回帖

推荐标签 标签

  • Caddy

    Caddy 是一款默认自动启用 HTTPS 的 HTTP/2 Web 服务器。

    10 引用 • 54 回帖 • 140 关注
  • 电影

    这是一个不能说的秘密。

    120 引用 • 598 回帖
  • 学习

    “梦想从学习开始,事业从实践起步” —— 习近平

    163 引用 • 473 回帖
  • Flume

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

    9 引用 • 6 回帖 • 613 关注
  • 锤子科技

    锤子科技(Smartisan)成立于 2012 年 5 月,是一家制造移动互联网终端设备的公司,公司的使命是用完美主义的工匠精神,打造用户体验一流的数码消费类产品(智能手机为主),改善人们的生活质量。

    4 引用 • 31 回帖 • 8 关注
  • Sublime

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

    10 引用 • 5 回帖
  • RYMCU

    RYMCU 致力于打造一个即严谨又活泼、专业又不失有趣,为数百万人服务的开源嵌入式知识学习交流平台。

    4 引用 • 6 回帖 • 45 关注
  • 酷鸟浏览器

    安全 · 稳定 · 快速
    为跨境从业人员提供专业的跨境浏览器

    3 引用 • 59 回帖 • 24 关注
  • 生活

    生活是指人类生存过程中的各项活动的总和,范畴较广,一般指为幸福的意义而存在。生活实际上是对人生的一种诠释。生活包括人类在社会中与自己息息相关的日常活动和心理影射。

    230 引用 • 1454 回帖 • 1 关注
  • React

    React 是 Facebook 开源的一个用于构建 UI 的 JavaScript 库。

    192 引用 • 291 回帖 • 430 关注
  • 房星科技

    房星网,我们不和没有钱的程序员谈理想,我们要让程序员又有理想又有钱。我们有雄厚的房地产行业线下资源,遍布昆明全城的 100 家门店、四千地产经纪人是我们坚实的后盾。

    6 引用 • 141 回帖 • 566 关注
  • Q&A

    提问之前请先看《提问的智慧》,好的问题比好的答案更有价值。

    7021 引用 • 31730 回帖 • 219 关注
  • CSDN

    CSDN (Chinese Software Developer Network) 创立于 1999 年,是中国的 IT 社区和服务平台,为中国的软件开发者和 IT 从业者提供知识传播、职业发展、软件开发等全生命周期服务,满足他们在职业发展中学习及共享知识和信息、建立职业发展社交圈、通过软件开发实现技术商业化等刚性需求。

    14 引用 • 155 回帖
  • Windows

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

    216 引用 • 463 回帖
  • 互联网

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

    96 引用 • 330 回帖
  • OnlyOffice
    4 引用 • 12 关注
  • 星云链

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

    3 引用 • 16 回帖 • 1 关注
  • Hibernate

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

    39 引用 • 103 回帖 • 701 关注
  • Scala

    Scala 是一门多范式的编程语言,集成面向对象编程和函数式编程的各种特性。

    13 引用 • 11 回帖 • 110 关注
  • TensorFlow

    TensorFlow 是一个采用数据流图(data flow graphs),用于数值计算的开源软件库。节点(Nodes)在图中表示数学操作,图中的线(edges)则表示在节点间相互联系的多维数据数组,即张量(tensor)。

    20 引用 • 19 回帖 • 1 关注
  • 百度

    百度(Nasdaq:BIDU)是全球最大的中文搜索引擎、最大的中文网站。2000 年 1 月由李彦宏创立于北京中关村,致力于向人们提供“简单,可依赖”的信息获取方式。“百度”二字源于中国宋朝词人辛弃疾的《青玉案·元夕》词句“众里寻他千百度”,象征着百度对中文信息检索技术的执著追求。

    63 引用 • 785 回帖 • 237 关注
  • 小薇

    小薇是一个用 Java 写的 QQ 聊天机器人 Web 服务,可以用于社群互动。

    由于 Smart QQ 从 2019 年 1 月 1 日起停止服务,所以该项目也已经停止维护了!

    34 引用 • 467 回帖 • 712 关注
  • InfluxDB

    InfluxDB 是一个开源的没有外部依赖的时间序列数据库。适用于记录度量,事件及实时分析。

    2 引用 • 55 关注
  • GitLab

    GitLab 是利用 Ruby 一个开源的版本管理系统,实现一个自托管的 Git 项目仓库,可通过 Web 界面操作公开或私有项目。

    46 引用 • 72 回帖
  • Oracle

    Oracle(甲骨文)公司,全称甲骨文股份有限公司(甲骨文软件系统有限公司),是全球最大的企业级软件公司,总部位于美国加利福尼亚州的红木滩。1989 年正式进入中国市场。2013 年,甲骨文已超越 IBM,成为继 Microsoft 后全球第二大软件公司。

    103 引用 • 126 回帖 • 442 关注
  • AngularJS

    AngularJS 诞生于 2009 年,由 Misko Hevery 等人创建,后为 Google 所收购。是一款优秀的前端 JS 框架,已经被用于 Google 的多款产品当中。AngularJS 有着诸多特性,最为核心的是:MVC、模块化、自动化双向数据绑定、语义化标签、依赖注入等。2.0 版本后已经改名为 Angular。

    12 引用 • 50 回帖 • 441 关注
  • HBase

    HBase 是一个分布式的、面向列的开源数据库,该技术来源于 Fay Chang 所撰写的 Google 论文 “Bigtable:一个结构化数据的分布式存储系统”。就像 Bigtable 利用了 Google 文件系统所提供的分布式数据存储一样,HBase 在 Hadoop 之上提供了类似于 Bigtable 的能力。

    17 引用 • 6 回帖 • 61 关注