Русский
Начать
← Все шаблоны

Obsidian LiveSync на Pethost в один клик

Сервер CouchDB, который синхронизирует ваши хранилища Obsidian через Self-hosted LiveSync

Что произойдет

  1. Вы входите в Pethost или создаете аккаунт — с passkey, через GitHub или Google.
  2. Машины еще нет? Вы выбираете тариф, и мы готовим машину для вас. Ссылка ждет в вашем браузере, пока машина не будет готова.
  3. Окно «Новый проект» открывается на этом приложении. Вы заполняете то, что оно просит, и нажимаете «Создать проект»: Пароль администратора.
  4. Через минуту-две приложение работает по своему адресу с HTTPS. Его секреты создаются случайно, а данные попадают в ночной бэкап.
  5. Это проект как любой другой: его compose.yaml, .env, логи и терминал — в панели, а ваш агент может его изменить, откатить или восстановить.

Первые шаги

В Obsidian установите плагин Self-hosted LiveSync и укажите в нем https://obsidian-livesync.sam.pethost.app как сервер, admin как имя пользователя и пароль, который вы задали. Базу данных плагин создаст сам.

Что запускается

Шаблон — это этот compose.yaml и переменные, которые он пишет в .env проекта. Pethost запускает файл так, как он написан.

services:
  couchdb:
    image: couchdb:3
    restart: unless-stopped
    environment:
      COUCHDB_USER: admin
      COUCHDB_PASSWORD: ${ADMIN_PASSWORD}
      COUCHDB_SECRET: ${COUCHDB_SECRET}
    configs:
      - source: livesync
        target: /opt/couchdb/etc/local.d/livesync.ini
    volumes:
      # The image declares /opt/couchdb/data a volume: the vaults are in it.
      - data:/opt/couchdb/data

configs:
  # What Self-hosted LiveSync's own setup script sets (utils/couchdb/provision.ts): one node,
  # nothing answered without a sign-in, room for big notes, and Obsidian's apps let in by CORS.
  livesync:
    content: |
      [couchdb]
      single_node = true
      max_document_size = 50000000

      [chttpd]
      require_valid_user = true
      max_http_request_size = 4294967296
      enable_cors = true

      [chttpd_auth]
      require_valid_user = true

      [httpd]
      WWW-Authenticate = Basic realm="couchdb"
      enable_cors = true

      [cors]
      origins = app://obsidian.md,capacitor://localhost,http://localhost
      credentials = true

volumes:
  data: