思源笔记(SiYuan)是一款开源的、本地优先的个人知识管理 (PKM) 系统,采用块级引用和双向链接技术,可帮助用户构建结构化、网络化的知识体系。

配置Docker Compose文件:

version: "3.9"
services:
  main:
    image: b3log/siyuan  # docker 镜像
    container_name: siyuan # 容器名称
    user: '0:0' # 读写用的用户名和用户组 
    command: ['serve','--workspace=/siyuan/workspace/', '--accessAuthCode=123456'] # 指定工作目录/siyuan/workspace/,指定访问密码(密码自行设定)
    environment:
      - TZ=Asia/Shanghai  # 设定时区
      - SIYUAN_LANG=zh-CN  # 设定语言,默认 en。目前可选值:zh-CN、zh-TW、en、ja 和 pt-BR,旧下划线值如 zh_CN/en_US 也兼容。
    ports: # 端口映射
      - 6806:6806  # “:” 之前可以自行设定端口,这里代表映射容器内部的 6806 端口到桌面端的 6806 端口,不指定时桌面端使用随机端口。
    volumes: # 文件夹映射
      - ./workspace:/siyuan/workspace # “:” 之前可以自行设定路径 “./” 代表当前 Docker Compose 文件所在的目录
    restart: unless-stopped # 总是在重启后启用容器

参数说明:

● image:指定用于运行思源笔记的Docker镜像。

● container_name:容器名称,用于识别和管理。

● command:指定启动命令,定义工作区路径,同时设置访问密码。自 v3.7.0 起,必须显式传入 serve 子命令。

● ports:用于指定监听端口。

● volumes:将本地工作区映射到容器中,确保数据的持久性。挂载 ./workspace 到容器的/siyuan/workspace路径。

● ./workspace:在这个上下文中,./ 代表当前 Docker Compose 文件所在的目录,./workspace指的是 Docker Compose 文件所在目录下的 workspace 子目录。

● restart:重启后自动重新启动容器。

● environment:设置环境变量。
 ○ TZ:时区标识符列表见 https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
 ○ SIYUAN_LANG:若希望设置中选择的语言在重启后仍生效,部署时请去掉该变量;若设置了,每次启动都会应用该值并覆盖已保存的语言设置。也可通过 --lang 命令行参数设置。如果两者都设置了,命令行的值将优先。

● user:镜像中默认是使用镜像默认创建的普通用户 siyuan (uid 1000/gid 1000)来启动内核进程的,这个权限不足,所以这里需要改为root权限(uid 0/gid 0)。

最后修改:2026 年 07 月 01 日
如果觉得我的文章对你有用,请随意赞赏