群晖 docker 部署思源笔记新手教程

本贴最后更新于 1201 天前,其中的信息可能已经斗转星移

我是新手加小白,才知道思源,刚好手上有台群晖,想在群晖上部署,但是用户指南上的 Docker 伺服教程写的太专业了,看完反而一头雾水;搜索了不少前辈们的教程,最后都是通过命令行部署,虽说结果一样,但对于我这样的小白来说多少还是不够直观,如是记录并整理了一下我的折腾过程。

PS:本文使用的思源版本为 V1.2.31

一、准备工作

打开 File Station,在 Docker 目录下手动新建文件夹,文件夹名如:siyuan

不需要再手动创建 data、conf 等文件夹,部署后会自动生成;

下面就以文件夹名 siyuan 为例。

二、下载镜像

在群辉 docker 中“注册表”搜索 siyuanb3log/siyuan 下载镜像。

dockerbushu01.jpg

三、目录映射及启动命令

目录映射有两种,“装载路径”不同,“执行命令”中的“命令”后面的启动参数就会不同。

启动参数:

-resident 指定为 true,为常驻内存;

-workspacer 指定工作空间文件夹路径。

PS :此处的启动参数跟据“用户指南”里面的写法 --resident=true --workspace=/siyuan/workspace/ 我用在群晖 Docker 面板的“命令”处会报错,但通过命令行的方式部署正常;我看到链滴讨论区有大佬用 -resident -workspace /siyuan/workspace/ 的格式,尝试了一下,发现没问题。

3-1:使用指定的工作目录:比喻 /siyuan 或其他目录;

3-2:使用思源默认工作目录 : /root/Documents/SiYuan

3-1、使用自定义工作目录

自定义工作文件夹需要通过 --workspace 来指定,如 --workspace=/siyuan/workspace/ 如 3-1 下图,如不加 --workspace 的参数便会使用默认的路径 /root/Documents/SiYuan 如 3-2 里面的图。

qhdockerbushu021.jpg

3-2、使用思源默认工作目录

如果启动命令里面不加 --workspace 的参数便会使用默认的路径 /root/Documents/SiYuan 如 3-2 下图,“存储空间”下对应该的“装载路径”就要修改为相应的路径 /root/Documents/SiYuan

这里偷了一下懒,直接在上面的图中修改了一下,具体请看图中蓝色字体部分。

qhdockerbushu022.jpg

四、容器端口映射

建议使用默认端口 6806,也可以根据需要修改,不过我没有试过。

qhdockerbushu03.jpg

五、其他

为了方便重启群晖或容器意外关闭后思源笔记能够及时运行,可以勾选对应容器“高级设置”里面“自动重启”的选项,需要在容器停止状态下修改。

😄 如果没报错的话,到这里就已经搞定了,浏览器访问 群晖 IP:6806😄

六、顺便记录一下命令行部署的方法

  1. 使用 SSH 工具进入群晖终端,一般用的是 admin 帐户,
  2. 使用 root 用户权限:sduo -i
  3. 拉取镜像:docker pull b3log/siyuan
  4. 部署镜像:
    docker run -v /volume2/docker/siyuan:/siyuan -p 6806:6806 b3log/siyuan --resident=true --workspace=/siyuan/
    或者
    docker run -v /volume2/docker/siyuan:/siyuan -p 6806:6806 b3log/siyuan -resident -workspace /siyuan/
  5. 搞定,浏览器访问 群晖 IP:6806

PS:/volume2/docker/siyuan 为存储笔记的文件夹,必须是完整的路径,需要进 Files Station 需要手动创建;冒号后面的 /siyuan 是通过后面的启动参数 --workspace=/siyuan/ 指定的镜像里的笔记存储位置,如果不用 --workspace 参数指定,默认就是 /root/Documents/SiYuan

  • 思源笔记

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

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

    22435 引用 • 89848 回帖
2 操作
gfanzuibang 在 2021-08-12 21:43:54 更新了该帖
gfanzuibang 在 2021-08-12 21:42:41 更新了该帖

相关帖子

优质回帖
  • ovst 1

    找了 2 个小时的方法,一直以为是安装步骤上的问题。
    最后,自己尝试了如下解决了问题:
    1、按常规方法安装好镜像
    2、用 SSH 登入服务器
    3、用 docker ps 查看 siyuan 容器的 ID 名称
    4、用 docker exec -it a201ec4e****(替换成你的容器的 ID) sh '命令进入容器
    5、用 find -name data '命令查找 data 的路径
    6、得到我的 data 路径为 /home/siyuan/Documents/SiYuan/data '坑爹的,和各种教程里的都不一样
    7、按这个路径做文件夹映射就 OK 了

    对以下问题的答复
    我的也是,Docker 里是空的,但群晖里存着笔记,感觉是原有的笔记和 Docker 容器里的笔记没有映射起来?具体也不大懂,毕竟外行,找时间先学学 Docker 再回来答

欢迎来到这里!

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

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

    在 docker 文件夹下手动新建名称为 siyuan 的文件夹,新建后右键点击 siyuan 文件夹--属性--权限

    把 Everyone 权限全部打上勾,另外注意文件夹的名称,区分大小写,按照上面教程 3-1 中,装载路径写 /siyuan/

    命令中:workspace /siyuan/ (这两个地方的 siyuan 前后都加了斜杆)

    1 回复
  • 其他回帖
  • ovst 1

    找了 2 个小时的方法,一直以为是安装步骤上的问题。
    最后,自己尝试了如下解决了问题:
    1、按常规方法安装好镜像
    2、用 SSH 登入服务器
    3、用 docker ps 查看 siyuan 容器的 ID 名称
    4、用 docker exec -it a201ec4e****(替换成你的容器的 ID) sh '命令进入容器
    5、用 find -name data '命令查找 data 的路径
    6、得到我的 data 路径为 /home/siyuan/Documents/SiYuan/data '坑爹的,和各种教程里的都不一样
    7、按这个路径做文件夹映射就 OK 了

    对以下问题的答复
    我的也是,Docker 里是空的,但群晖里存着笔记,感觉是原有的笔记和 Docker 容器里的笔记没有映射起来?具体也不大懂,毕竟外行,找时间先学学 Docker 再回来答

  • chax

    我的参数是 docker run -v /volume1/siyuan:/siyuan -p 6806:6806 -u 1000:1000 b3log/siyuan -resident -workspace /siyuan/ 。用 ddnspod+ 路由器端口映射实现外网访问。

  • 1.4.6 版本以后默认用户变了,这个用户问题没解决,1.4.6 以前的版本启动产数改成下面这样可以使用!

    -resident -workspace /siyuan --servePath 你的外网域名 --ssl true

  • 查看全部回帖