ignis:让原版 Obsidian 随处可用——浏览器访问,自动同步

ignis 将原版 Obsidian 带到了浏览器。它不是 VNC 等远程桌面方案,而是真正的 Web 应用,保留了原版的编辑体验,支持绝大多数功能和插件,并能自动同步数据,让你在任何浏览器中无缝继续创作。

指标 描述
适用系统 支持 Docker 的 Linux 系统
走通流程时间 15 分钟

I might have made some mistakes, please let me know if I’ve gotten anything wrong!

安装 ignis

官方文档: https://github.com/Nystik-gh/ignis/blob/main/apps/ignis-server/README.md

创建应用目录

mkdir -p ~/myserve/ignis && cd ~/myserve/ignis && mkdir vaults data

创建 docker-compose.yml 文件

vim docker-compose.yml
services:
  ignis:
    image: nobbe/ignis:latest
    container_name: ignis
    ports:
      - "127.0.0.1:44682:8080"
    environment:
      - PUID=1000
      - PGID=1000
    volumes:
      - ./vaults:/vaults
      - ./data:/app/data
      - obsidian-app:/app/obsidian-app
    restart: unless-stopped

volumes:
  obsidian-app:

拉取镜像

docker compose pull

运行容器

docker compose up -d

首次启动时,容器会从官方源码下载 Obsidian,并安装 Obsidian Headless CLI。这需要一两分钟。

方便读者使用的命令

docker compose down  # 停止容器
docker compose logs  # 查看实时日志

反代 + 访问密码

获取证书

先了解如何获取证书:使用 acme.sh 申请和自动更新证书的完整指南 – 技焉洲 [[02acme.sh]]

使用 root 用户执行获取证书的命令

sudo -i

注意修改下面的域名

申请证书

acme.sh --issue -d obsidian.vfly2.com --webroot /var/www/html

安装证书,并设置在自动更新证书后,重新加载 Nginx

acme.sh --install-cert -d obsidian.vfly2.com \
--key-file       /etc/ssl/private/obsidian.vfly2.com.key \
--fullchain-file /etc/ssl/certs/obsidian.vfly2.com.cer \
--reloadcmd "systemctl reload nginx"

创建访问密码

创建密码文件(如果提示缺少 htpasswd,执行 sudo apt install apache2-utils

需要修改命令中的 <username> 为你的用户名

sudo htpasswd -c /etc/nginx/.htpasswd <username>

Nginx 配置

创建 Nginx 配置文件(只需修改域名)

sudo vim /etc/nginx/sites-available/ignis
server {
    listen 80;
    server_name obsidian.vfly2.com;

    location /.well-known/acme-challenge/ {
        root /var/www/html;
    }

    location / {
        return 301 https://$server_name$request_uri;
    }
}

server {
    listen 443 ssl;
    server_name obsidian.vfly2.com;

    ssl_certificate /etc/ssl/certs/obsidian.vfly2.com.cer;
    ssl_certificate_key /etc/ssl/private/obsidian.vfly2.com.key;

    client_max_body_size 10m;
    proxy_buffering off;
    proxy_request_buffering off;

    location /.well-known/acme-challenge/ {
      root /var/www/html;
    }

    location / {
        auth_basic "Restricted Content";
        auth_basic_user_file /etc/nginx/.htpasswd;

        proxy_pass http://localhost:44682;

        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;

        proxy_connect_timeout 300;

        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
    }

    location /favicon.png {
        proxy_pass http://localhost:44682;

        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

启用配置

sudo ln -s /etc/nginx/sites-available/ignis /etc/nginx/sites-enabled/ignis

检查配置并重启生效

sudo nginx -t && sudo systemctl reload nginx

使用 ignis

在浏览器输入网址即可,如果配置了访问密码,需要输入用户名和密码。

务必配置访问密码,否则任何人知道了网址就都能查看和修改你的笔记。

有一点需要注意,如果你使用 https://username:passsword@obsidian.vfly2.com/ 这种带用户名和密码的网址打开网页,会导致无法查看社区插件。不过通过这种方式打卡就不必每次都输入密码了。

在网页上可以创建仓库,每一个仓库就是 ~/myserve/ignis/vaults 下的一个目录,和桌面版是一样的。

如果你想把现有的仓库在浏览器里打开,只需要复制到 vaults 目录下。


以下是手机浏览器打开的样子,极简美观。不过目前,手机浏览器无法切换仓库,我的办法是先以桌面版打开,切换仓库后,再改为手机版。

ignis 与桌面 Obsidian 互相同步

ignis 可以看作是 web 版的 Obsidian,由于都对应着一个服务端,所以在任意浏览器打开都能看到相同的内容,编辑后会自动同步到每个浏览器。

可是,如果你同样在使用桌面端的原版 Obsidian,想要 web 版的和桌面版的实现同步,可以借助第三方的文件同步功能,比如坚果云、Nextcloud 等网盘。

下面介绍 Nextcloud 的同步方案,使用其他应用也可以,理念是一样的,就是在服务端安装网盘的客户端,并定期进行同步即可。


Debian/Ubuntu 上安装 nextcloudcmd

sudo apt install nextcloud-desktop-cmd

第一次先手动执行一次同步(填入用户名、密码、Nextcloud 上的路径、本地系统的路径、网址)

nextcloudcmd -u <username> -p <password> --silent --path /Notes $HOME/myserve/ignis/vaults https://nextcloud.vfly2.com/

之后可以借助 crontab 定时同步:

crontab -e

例如每 3 分钟同步一次:

*/3 * * * * nextcloudcmd -u <username> -p <password> --non-interactive --silent --path /Notes /home/<username>/myserve/ignis/vaults https://nextcloud.vfly2.com/

备份和迁移

数据都在这两个目录下 vaults 和 data,其实后者只是一些服务端的设置,备份价值不大;而 vaults 可以借助第三方的网盘进行备份。

迁移时,在新服务器重新安装,配置反代,再同步仓库即可。


原文链接: https://yanh.tech/2026/07/ignis-self-hosted-web-obsidian/

版权声明:本博客所有文章除特別声明外,均为 AhFei 原创,采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 技焉洲 (yanh.tech)

保持更新 ٩(•̤̀ᵕ•̤́๑)ᵒᵏᵎᵎᵎᵎ 清晰恒益的实用技能,欢迎使用 RSS 订阅,如果能留言互动就更好了。

可在 Telegram 群组 https://t.me/vfly2 交流依文章步骤遇到的问题。

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇