侧边栏壁纸
博主头像
Setyg的博客

当秋风染红落叶的时候,就是新生~

  • 累计撰写 86 篇文章
  • 累计创建 66 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

思源笔记应用搭建

Setyg
2026-09-08 / 0 评论 / 0 点赞 / 10 阅读 / 0 字

思源笔记(私有笔记软件应用搭建)

本文总结基于 思源笔记(SiYuan) 自建私有笔记服务的完整部署流程,

包括 Docker Compose 编排、环境变量配置以及 Caddy2 反向代理与 HTTPS。

为什么选择思源笔记

  • 完全私有化 — 数据存储在自己的服务器上,不依赖第三方云服务

  • 块级编辑 — 类似 Notion 的块级引用与双向链接,适合知识管理

  • Docker 部署 — 官方提供 Docker 镜像,一键部署,运维简单

  • API 开放 — 提供 API Key,可与其他工具集成

  • 多端同步 — 通过自建服务器实现多端数据同步

Docker Compose 部署

1. 创建环境变量文件

在 docker-compose.yml 同级目录新建一个 .env 文件:

AuthCode=your-siyuan-access-token
YOUR_TIME_ZONE=Asia/Shanghai
YOUR_USER_PUID=1000
YOUR_USER_PGID=1000

变量名

说明

AuthCode

思源笔记访问授权码,用于保护服务端点,设置为强密码

YOUR_TIME_ZONE

时区设置,国内使用 Asia/Shanghai

YOUR_USER_PUID

运行用户的 UID,一般设为 1000

YOUR_USER_PGID

运行用户的 GID,一般设为 1000

2. 创建 Docker Compose 配置

创建 docker-compose.yml:

version: "3.8"
services:
  main:
    image: b3log/siyuan:v3.8.0
    container_name: siyuan_note
    command: ['serve', '--accessAuthCode=${AuthCode}']
    ports:
      - '6806:6806'
    volumes:
      - ./workspace:/siyuan/workspace
    restart: always
    environment:
      - TZ=${YOUR_TIME_ZONE}
      - PUID=${YOUR_USER_PUID}
      - PGID=${YOUR_USER_PGID}
      - SIYUAN_API_KEY=${your_api_key}
      - SIYUAN_WORKSPACE_PATH=/siyuan/workspace
      - SIYUAN_ACCESS_AUTH_CODE=${AuthCode}

配置项

说明

image

思源笔记官方镜像,b3log/siyuan,指定版本号

command

启动命令,serve 模式并以 --accessAuthCode 传入授权码

ports

默认端口 6806,思源笔记 Web 服务监听端口

volumes

将 ./workspace 挂载到容器内,持久化笔记数据

SIYUAN_API_KEY

API 密钥,用于程序化访问思源笔记

SIYUAN_WORKSPACE_PATH

工作空间路径,容器内默认 /siyuan/workspace

3. 启动服务

docker compose up -d

信息

启动后通过 http://服务器IP:6806 即可访问思源笔记 Web 界面。首次访问需要输入 AuthCode 授权码。

Caddy2 反向代理与 HTTPS

使用 Caddy2 作为反向代理,自动申请 HTTPS 证书,实现域名访问。

Caddyfile 配置

your-domain.cn {
    reverse_proxy 127.0.0.1:6806

    handle_errors {
        respond "Redirect to {http.error.status_code} {http.error.message}" 303
    }

    header -Server

    tls your-email@example.com
}

配置项

说明

reverse_proxy

将域名请求转发到思源笔记的 6806 端口

handle_errors

自定义错误响应,返回 303 重定向

header -Server

移除响应头中的 Server 信息,增强安全性

tls

指定邮箱用于 Let's Encrypt 证书申请,Caddy 自动管理证书续期

提示

Caddy2 默认自动 HTTPS,只需在 Caddyfile 中写上域名,Caddy 会自动申请并续期证书,无需手动配置 Certbot。

部署架构总览

层级

组件

端口

说明

反向代理

Caddy2

80 / 443

自动 HTTPS,反向代理到思源笔记

笔记服务

思源笔记 (SiYuan)

6806

Docker 容器运行,数据持久化

数据存储

本地 Volume

—

./workspace 目录保存所有笔记数据

常用运维命令

# 查看服务状态
docker compose ps

# 查看实时日志
docker compose logs -f

# 重启服务
docker compose restart

# 更新镜像
docker compose pull
docker compose up -d

# 停止服务
docker compose down

注意事项

  1. 数据备份 — ./workspace 目录包含所有笔记数据,建议定期备份到异地

  2. 授权码安全 — AuthCode 是访问密钥,务必设置为强密码,不要使用默认值

  3. API Key 保管 — SIYUAN_API_KEY 用于程序化访问,不要泄露到公开仓库

  4. 版本升级 — 升级前先备份 workspace 目录,跨大版本升级需查阅官方升级说明

  5. 端口安全 — 如果使用 Caddy 反向代理,6806 端口无需对外暴露,仅 Caddy 的 80/443 对外即可

参考资源

0
  1. 支付宝打赏

    qrcode alipay
  2. 微信打赏

    qrcode weixin

评论区