---
title: "Cách đồng bộ vault Obsidian qua các thiết bị an toàn"
description: "Học cách đồng bộ hóa an toàn vault Obsidian qua các thiết bị bằng cách tự host Synch và Ignis trong mạng riêng Cloudflare Zero Trust cực kỳ bảo mật."
canonical_url: "https://techvoyage.dev/vi/article/sync-obsidian-across-devices"
last_updated: "2026-10-20T09:53:55.164Z"
---

Obsidian là một ứng dụng quản lý ghi chú/tri thức theo triết lý local-first (ưu tiên lưu trữ cục bộ). Mỗi ghi chú thực chất là một file markdown nằm trên thiết bị và hoàn toàn thuộc quyền kiểm soát của bạn. Tuy nhiên, chúng ta thường mong muốn đồng bộ cùng một vault (kho ghi chú) trên cả laptop, điện thoại và các thiết bị khác, hoặc có thể truy cập từ xa thông qua trình duyệt web khi cần thiết.

![Hình minh họa kho ghi chú Obsidian được đồng bộ trên nhiều thiết bị](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/obsidian-multi-device-sync-illustration.webp)Hiện có nhiều giải pháp đồng bộ hóa cho Obsidian, nhưng chúng đều phải đánh đổi giữa tính năng xử lý xung đột, bảo mật mã hóa và chủ quyền dữ liệu cá nhân. [Synch](https://github.com/hjinco/synch) là một ứng dụng mã nguồn mở giúp đồng bộ hóa các vault Obsidian với cơ chế mã hóa đầu cuối (E2E) và tự động giải quyết xung đột trên máy chủ tự host.

Mặc dù phương pháp local-first của Obsidian hoạt động hoàn hảo trong hầu hết thời gian, đôi khi chúng ta vẫn cần truy cập ghi chú từ xa qua trình duyệt web. [Ignis](https://github.com/Nystik-gh/ignis) là giải pháp mã nguồn mở cho phép chạy Obsidian trực tiếp trên trình duyệt web với trải nghiệm gần như ứng dụng gốc, giúp bạn dễ dàng đọc và chỉnh sửa ghi chú từ bất kỳ đâu.

Trong hướng dẫn này, chúng ta sẽ thiết lập **Synch** và **Ignis** trên một **VPS**, đồng thời bảo mật chúng bên trong mạng riêng **Cloudflare Zero Trust** thay vì mở trực tiếp ra internet công cộng.

![Sơ đồ kiến trúc đồng bộ Obsidian sử dụng Cloudflare Zero Trust](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/obsidian-sync-cloudflare-zero-trust-architecture.webp)<article-card description="Tìm hiểu cách expose và truy cập an toàn vào Hermes Agent của bạn trên toàn cầu bằng Cloudflare WARP và Zero Trust mà không cần mở cổng firewall inbound." image="https://inimages.techvoyage.dev/articles/Exposing%20Hermes%20Agent%20to%20Private%20Network%20Using%20Cloudflare%20WARP/EN-Exposing-Hermes-Agent-to-Private-Network-Using-Cloudflare-WARP.webp" image-alt="Thiết lập mạng riêng tư an toàn sử dụng Cloudflare Zero Trust và đường truyền WARP tunnel" label="Hướng dẫn liên quan" min-read="8" title="Cách expose Hermes Agent riêng tư bằng Cloudflare WARP" to="/article/exposing-hermes-agent-to-private-network-using-cloudflare-warp">



</article-card>

## Đồng bộ hóa Vault Obsidian bảo mật với Synch

**Synch** cung cấp các tính năng nổi bật sau:

- Đồng bộ hóa vault ngay khi phát hiện thay đổi
- Mã hóa dữ liệu vault đầu cuối trước khi upload
- Khôi phục từ lịch sử phiên bản
- Tự động xử lý và giải quyết xung đột file

**Synch** tạo ra một **vault key** (khóa giải mã) 32-byte ngẫu nhiên trên thiết bị của bạn, dùng để mã hóa toàn bộ dữ liệu ghi chú. Khi tạo vault từ xa, bạn sẽ chọn một **vault password** (mật khẩu vault); mật khẩu này dùng để bảo vệ **vault key** để khóa có thể được lưu trữ an toàn trên server và giải mã trên các thiết bị khác của bạn.

Việc giải quyết xung đột ghi chú được xử lý trực tiếp trên thiết bị khách (client) thay vì trên server. Nếu hai thiết bị cùng chỉnh sửa một ghi chú đồng thời, server sẽ giữ phiên bản nào gửi đến trước và báo cho thiết bị còn lại rằng file của họ đã lỗi thời. Thiết bị đó sẽ tự động gộp phiên bản mới từ server vào các thay đổi cục bộ của mình rồi mới upload bản ghi chú cuối cùng lên.

### Thiết lập Synch trên VPS

#### Tạo Bản ghi Tên miền (DNS)

Tạo một bản ghi A trên Cloudflare và đặt trạng thái proxy là **DNS only** (bỏ qua CDN của Cloudflare).

![Cấu hình bản ghi DNS A cho máy chủ Synch trong Cloudflare](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/cloudflare-dns-a-record-synch-server.webp)#### Cài đặt Synch Docker trên Ubuntu

##### Clone Repository

```bash
git clone https://github.com/hjinco/synch.git       
        
# Navigate to the API folder
cd synch/apps/api
        
# Copy the example environment file:
cp .env.example .env
```

##### Chỉnh sửa các giá trị trong `.env`

- `PUBLIC_URL=synch.pafor.me`: Điền tên miền công cộng của server Synch (tên miền bạn vừa cấu hình ở bước trên).
- `BETTER_AUTH_SECRET` và `SYNC_TOKEN_SECRET`: Tạo các khóa bí mật bảo mật bằng cách sử dụng [công cụ tạo key online](/vi/tools/secret-key-hex) hoặc chạy lệnh `openssl rand -hex 32` hai lần trong terminal của bạn.
- `AUTH_ALLOWED_EMAILS`: Danh sách các email được phép đăng ký và tạo tài khoản (ngăn cách bằng dấu phẩy).

##### Thêm Tên miền vào Caddyfile

Thông tin chi tiết về cách tích hợp module Cloudflare DNS vào Caddy và chạy bằng Docker container được trình bày trong [bài viết tự host Buzz của chúng tôi](/article/self-hosting-buzz-as-the-workspace-where-ai-agents-become-colleagues#_4-enable-https-with-caddy).

<article-card description="Tìm hiểu cách định cấu hình Caddy để tự động cấp chứng chỉ SSL/TLS bằng cách sử dụng các thử thách DNS của Cloudflare trong các vùng chứa Docker." image="https://inimages.techvoyage.dev/articles/Self-Hosting%20Buzz%20As%20The%20Workspace%20Where%20AI%20Agents%20Become%20Colleagues/EN-Self-Hosting-Buzz-As-The-Workspace-Where-AI-Agents-Become-Colleagues.webp" image-alt="Định cấu hình Caddy bằng token API Cloudflare DNS để tự động tạo chứng chỉ SSL/TLS trong không gian làm việc tự host" label="Hướng dẫn tự host" min-read="12" title="Tự host Buzz của Block: Không gian cộng tác giữa người và AI" to="/article/self-hosting-buzz-as-the-workspace-where-ai-agents-become-colleagues#_4-enable-https-with-caddy">



</article-card>

Thêm biến môi trường `SYNCH_DOMAIN` vào file Caddyfile và trỏ về cổng 8787 của container Synch:

```json
{
  acme_dns cloudflare {env.CLOUDFLARE_API_TOKEN}
}

{$SYNCH_DOMAIN} {
  encode zstd gzip
  reverse_proxy host.docker.internal:8787
}
```

Khởi chạy container:

```bash
docker compose up -d
```

Chạy lệnh `curl` sau để kiểm tra xem hệ thống đã hoạt động chưa:

```bash
curl https://synch.pafor.me/health
```

### Kết nối Obsidian với Server Synch

#### Cài đặt Plugin Synch trên Obsidian

Vào Cài đặt (Settings) -> Community plugins và nhấn nút **'Browse'**:

![Duyệt các plugin cộng đồng trong cài đặt Obsidian](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/obsidian-community-plugins-browse.webp)Tìm kiếm và cài đặt plugin **'Synchrun'**:
![Cài đặt plugin Synchrun trong Obsidian](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/obsidian-install-synchrun-plugin.webp)

Sau khi cài đặt xong **'Synchrun'**, vào phần cài đặt của plugin này, kích hoạt tùy chọn **'Use a self-hosted server'**. Điền địa chỉ `https://synch.pafor.me` vào trường **'Server URL'** và nhấn **'Save'**.

![Cấu hình URL máy chủ tự host trong cài đặt plugin Synchrun](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/obsidian-synchrun-plugin-settings-self-hosted.webp)Nhấn nút **'Sign in on this device'** bên dưới mục **'Account'**. Tiến hành đăng ký tài khoản (hãy sử dụng đúng email bạn đã khai báo trong danh sách `AUTH_ALLOWED_EMAILS`), bạn sẽ được chuyển đến trang ủy quyền sau:

![Trang ủy quyền tài khoản cho Synchrun](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/synchrun-account-authorization-page.webp)Nhấn nút **'Allow Obsidian sign-in'**:

![Cho phép đăng nhập Obsidian cho Synch](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/synchrun-allow-obsidian-signin.webp)Nhấn nút **'Return to Obsidian'** rồi click chọn **'Create vault'**:
![Tạo một kho ghi chú từ xa mới trong Synchrun](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/obsidian-synchrun-create-remote-vault.webp)

Đặt tên cho vault và mật khẩu để tạo vault mới.

![Thiết lập mật khẩu an toàn cho kho ghi chú từ xa Obsidian](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/obsidian-synchrun-vault-password-setup.webp)Quá trình đồng bộ hóa sẽ bắt đầu ngay lập tức và có thể mất một thời gian tùy theo dung lượng vault của bạn. Khi đồng bộ hoàn tất, dung lượng bộ nhớ đã sử dụng sẽ được hiển thị.

![Đồng bộ Synchrun hoàn tất hiển thị tổng dung lượng đã sử dụng](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/obsidian-synchrun-sync-completed-storage.webp)## Truy cập Obsidian qua Web bằng Ignis

**Ignis** thay thế các Electron API của Obsidian bằng Web API, cho phép mã nguồn JavaScript của Obsidian chạy trực tiếp trên trình duyệt web tiêu chuẩn. Tất cả các file markdown và tài liệu đính kèm đều được lưu trực tiếp trên hệ thống file của máy chủ host.

Tuy nhiên, do hạn chế của môi trường sandbox trình duyệt, một số tính năng hoặc plugin yêu cầu truy cập API của Node.js hoặc Electron sẽ không thể hoạt động. Vui lòng tham khảo các hướng dẫn về [Hạn chế của Ignis](https://ignis.thiefling.com/docs/using/limitations/) và [Khả năng tương thích plugin](https://ignis.thiefling.com/docs/using/plugin-compatibility/) để biết thêm chi tiết.

### Cài đặt Ignis

Chúng ta sẽ cài đặt **Ignis** trên VPS bằng Docker và mount thư mục lưu trữ vào `./vaults`. Thư mục này sau đó sẽ được đồng bộ hóa tự động bằng **Synch CLI** với vault từ xa mà chúng ta đã thiết lập ở phần trước.

Vì **Ignis** không có sẵn hệ thống xác thực người dùng, chúng ta sẽ giấu nó an toàn đằng sau mạng riêng ảo **Cloudflare Zero Trust**.

#### Tạo Bản ghi DNS

![Cấu hình bản ghi DNS A cho ứng dụng web Ignis trong Cloudflare](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/cloudflare-dns-a-record-ignis.webp)#### Thêm Tên miền vào Caddyfile

Thêm tên miền `obsidian.pafor.me` vào Caddyfile tương tự như cách làm với `synch.pafor.me`:

```json
{$OBSIDIAN_DOMAIN} {
  encode zstd gzip
  reverse_proxy host.docker.internal:9898
}
```

#### Khởi chạy Ignis bằng Docker

Lưu file cấu hình Docker Compose sau thành `ignis-docker-compose.yml` trên VPS:

```yml
services:
  ignis:
    image: nobbe/ignis:latest
    ports:
      - "9898:8080"
    environment:
      # match these to your host user (run: id)
      - PUID=1000
      - PGID=1000
      - WS_ORIGINS=https://obsidian.pafor.me
    volumes:
      - ./vaults:/vaults
      - ./data:/app/data
      - obsidian-app:/app/obsidian-app
    restart: unless-stopped

volumes:
  obsidian-app:
```

- Sử dụng cổng `9898` trên máy chủ host vì cổng `8080` rất dễ bị trùng lặp với các dịch vụ khác.
- Chạy lệnh `id` trên VPS để lấy thông số `UID` và `GID` của user trên máy chủ nhằm đảm bảo phân quyền ghi đọc chính xác.
- Đặt `WS_ORIGINS` chỉ cho phép kết nối WebSocket từ đúng tên miền của bạn để tăng độ bảo mật.

Khởi chạy container **Ignis**:

```bash
docker compose -f ignis-docker-compose.yml up -d
```

Khi bạn truy cập tên miền của mình trên trình duyệt web, giao diện **'Vault Manager'** sẽ hiện ra. Thư mục này hiện tại trống vì chưa có vault nào được liên kết. Ở phần tiếp theo, chúng ta sẽ cấu hình **'Synch CLI'** để đồng bộ dữ liệu từ vault từ xa về máy chủ.

![Giao diện Vault Manager trống trong ứng dụng web Ignis](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/ignis-vault-manager-empty.webp)#### Giải quyết Vấn đề Firewall của Docker

Mặc định, Docker tự động chèn các quy tắc DNAT và FORWARD của riêng nó vào iptables, chuyển tiếp trực tiếp lưu lượng truy cập từ internet công cộng vào các cổng container đang hoạt động. Điều này bỏ qua hoàn toàn chuỗi bảo vệ `INPUT` thông thường của UFW hoặc iptables trên Ubuntu. Để chặn lưu lượng truy cập công cộng và giữ cho các container hoàn toàn riêng tư, hãy thêm các quy tắc sau vào `iptables`:

```bash
# Chặn toàn bộ lưu lượng truy cập bên ngoài
sudo iptables -I DOCKER-USER -i ext_if -j DROP 

# Chỉ cho phép lưu lượng truy cập từ địa chỉ IP riêng của client Cloudflare WARP
sudo iptables -I DOCKER-USER -i ext_if -s 100.96.0.10 -j ACCEPT
```

#### Cấu hình Synch CLI

**Synch CLI** là công cụ dòng lệnh chạy headless (không giao diện), cho phép bạn đồng bộ hóa dữ liệu vault trực tiếp trên các máy chủ từ xa mà không cần cài đặt ứng dụng Obsidian hoàn chỉnh.

Build **Synch CLI** từ mã nguồn repository `synch` bạn đã clone. Quá trình build yêu cầu **Node.js >= 22.5** (vì CLI sử dụng thư viện `node:sqlite` và các API trình duyệt toàn cầu như `fetch`, `WebSocket`, `WebCrypto`) và trình quản lý gói **pnpm** (repo là một pnpm workspace, sử dụng phiên bản `pnpm@10.33.0`):

```bash
# Check versions
node --version   # must be >= 22.5
pnpm --version

# In the repos root
pnpm install

# Build the CLI bundle
pnpm -C apps/cli build

# After a successful build you have `apps/cli/dist/synch.js`. Make it executable and put it on your PATH
chmod +x apps/cli/dist/synch.js
ln -sf "$PWD/apps/cli/dist/synch.js" "$HOME/.local/bin/synch"

# Verification
synch --help
```

Vì Synch CLI đang chạy trên cùng một máy chủ VPS với máy chủ lưu trữ Synch, nó có thể tự động kết nối trực tiếp với server API cục bộ. Nếu bạn cấu hình một server khác, hãy chạy lệnh `synch login --api-url <remote-synch-api-url>` để chỉ định máy chủ API đích.

![Chạy lệnh synch login với URL API tùy chỉnh trong terminal](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/synch-login-api-url-terminal.webp)

Chạy lệnh `synch login` trong terminal của bạn, hệ thống sẽ trả về một đường link đăng nhập để xác thực:

![Đầu ra terminal hiển thị URL xác thực cho Synch CLI](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/synch-login-auth-url-terminal.webp)

Đăng nhập thông qua trình duyệt bằng tài khoản email trùng với tài khoản bạn đang sử dụng trên ứng dụng Obsidian desktop.

![Đăng nhập web thành công để ủy quyền Synch CLI](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/synch-web-login-success.webp)

Chạy lệnh `synch vault connect --vault ~/vaults/<vaultname> --vault-id asadqe-7b29-4677-fsad-234asdafasd` để liên kết thư mục vault cục bộ trên VPS với vault từ xa trên server của bạn.

ID của vault từ xa có thể được tìm thấy bằng cách vào plugin **Synchrun** trên máy tính và nhấn **'Manage remote vaults'**. Hệ thống sẽ mở một trang web hiển thị danh sách các vault từ xa của bạn, mỗi vault đi kèm với một dãy GUID duy nhất (ví dụ: `123e4567-e89b-12d3-a456-426614174000`):

![Quản lý kho ghi chú từ xa trong plugin Synchrun](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/synchrun-manage-remote-vaults.webp)![Định vị ID kho ghi chú từ xa duy nhất trong Synchrun](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/synchrun-remote-vault-id.webp)

Nhập mật khẩu vault khi được yêu cầu để hoàn tất liên kết. Sau khi kết nối thành công, chạy lệnh `synch sync --vault ~/vaults/<vault-name>` to bắt đầu đồng bộ lần đầu tiên. Quá trình này có thể mất một thời gian tùy theo lượng file ghi chú của bạn.

![Tiến trình đồng bộ kho ghi chú ban đầu trong Synch CLI](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/synch-cli-initial-sync-progress.webp)

Để tự động hóa hoàn toàn việc này, hãy tạo và kích hoạt một dịch vụ systemd chạy lệnh `synch watch` liên tục trong nền, giúp đồng bộ hóa ghi chú ngay lập tức khi máy chủ khởi động:

```bash
sudo tee /etc/systemd/system/synch-watch.service <<'EOF'
[Unit]
Description=Synch vault watcher
After=network-online.target
Wants=network-online.target

[Service]
Type=simple
User=<username>
ExecStart=/home/<username>/.local/bin/synch watch --vault /home/<username>/vaults/<vault-name>
WorkingDirectory=/home/<username>/vaults
Environment="PATH=/home/<username>/.local/bin:/home/<username>/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
Environment="HOME=/home/<username>"
Restart=always
RestartSec=5

[Install]
WantedBy=multi-user.target
EOF
sudo systemctl daemon-reload
sudo systemctl enable --now synch-watch.service
```

Bây giờ, hãy mở tên miền `obsidian.pafor.me` trên trình duyệt. Bạn sẽ thấy giao diện sử dụng và bố cục layout gần như giống hệt với app Obsidian trên máy tính:

![Giao diện web Ignis hiển thị kho ghi chú Obsidian trên màn hình máy tính](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/ignis-web-interface-desktop-view.webp)Bấm vào icon Cài đặt (Settings), bạn sẽ thấy hầu hết mọi cấu hình cốt lõi đều được giữ nguyên, chỉ có các community plugin là bạn cần cài đặt lại từ đầu:

![Cài đặt plugin cộng đồng trong giao diện web Ignis](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/ignis-settings-community-plugins.webp)Để chạy thử nghiệm chu trình đồng bộ, bạn hãy thêm một ghi chú mới ngay trên trình duyệt:

![Tạo một ghi chú markdown mới thông qua giao diện web Ignis](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/ignis-create-new-note-web.webp)Ghi chú này sẽ ngay lập tức được đồng bộ ngược lại về ứng dụng Obsidian trên máy tính của bạn. Lưu ý rằng các thư mục trống sẽ không hiển thị trên giao diện của **Ignis**.

![Ghi chú mới tạo đã được đồng bộ thành công sang ứng dụng Obsidian máy tính](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/obsidian-desktop-synced-note.webp)Giao diện hiển thị khi truy cập `obsidian.pafor.me` trên trình duyệt điện thoại di động:

![Điều hướng thanh bên của ứng dụng web Ignis trên thiết bị di động](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/ignis-mobile-view-sidebar.webp)![Trình chỉnh sửa ghi chú markdown của ứng dụng web Ignis trên thiết bị di động](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/ignis-mobile-view-editor.webp)

Khi bạn xóa một ghi chú trên **Ignis**, ghi chú đó sẽ được chuyển an toàn vào thư mục rác cục bộ `~/vaults/<vault-name>/.trash` để tránh mất mát dữ liệu ngoài ý muốn.

## Lời kết cho giải pháp tự host Vault Obsidian

Sự kết hợp giữa **Synch** và **Ignis** giúp vault Obsidian của bạn luôn khả dụng trên mọi thiết bị, chạy hoàn toàn trên hạ tầng VPS do chính bạn kiểm soát. Việc đặt các dịch vụ này đằng sau mạng riêng ảo **Cloudflare Zero Trust** đem lại một hàng rào bảo mật tuyệt đối, ngăn chặn mọi nỗ lực xâm nhập từ internet công cộng.

Tất nhiên, **Ignis** không được thiết kế để thay thế hoàn toàn ứng dụng Obsidian gốc trên máy tính. Nó đóng vai trò như một giải pháp cứu cánh tạm thời, giúp bạn đọc và sửa ghi chú nhanh chóng qua bất kỳ trình duyệt nào khi không mang theo máy tính cá nhân. Đối với việc soạn thảo tài liệu lâu dài hay quản lý vault chuyên sâu, ứng dụng gốc trên máy tính vẫn là lựa chọn đem lại trải nghiệm tốt nhất.

Do cơ chế mã hóa đầu cuối cực kỳ mạnh mẽ của Synch, mật khẩu vault từ xa của bạn phải đủ phức tạp để tránh bị tấn công brute-force. Việc ghi nhớ mật khẩu này là vô cùng quan trọng vì server không hề lưu trữ **vault key** giải mã; nếu quên mật khẩu, dữ liệu ghi chú của bạn sẽ vĩnh viễn không thể khôi phục. Ngoài ra, hãy chú ý bảo mật VPS của bạn thật tốt cùng với các bản snapshot và backup định kỳ.

Mặc dù tính năng lưu lịch sử phiên bản đã mã hóa và khôi phục file đã xóa của **Synch** bảo vệ bạn khỏi hầu hết rủi ro mất dữ liệu, việc lưu trữ thêm một bản backup độc lập của vault Obsidian ở một nơi khác vẫn luôn là điều cần thiết.

## References

- [Synch Deploy with Docker Compose](https://synch.run/self-hosting-docker/)
- [Ignis Deploy with Docker](https://ignis.thiefling.com/docs/server/deploy/)
- [How does end-to-end encryption work in Synch?](https://synch.run/blog/encryption-and-decryption/)
