Polski
Zacznij
← Wszystkie szablony

Wdróż aplikację Obsidian LiveSync na Pethost jednym kliknięciem

Serwer CouchDB, który synchronizuje twoje sejfy Obsidiana przez Self-hosted LiveSync

Co się dzieje

  1. Logujesz się do Pethost albo zakładasz konto, kluczem dostępu, przez GitHub albo Google.
  2. Nie masz jeszcze maszyny? Wybierasz plan, a my ją dla ciebie przygotowujemy. Link czeka w twojej przeglądarce, aż będzie gotowa.
  3. Okno „Nowy projekt” otwiera się na tej aplikacji. Wypełniasz to, o co prosi, i klikasz „Utwórz projekt”: Hasło administratora.
  4. Za minutę czy dwie aplikacja działa pod własnym adresem z HTTPS. Jej sekrety są tworzone losowo, a dane trafiają do nocnego backupu.
  5. To projekt jak każdy inny: jego compose.yaml, .env, logi i terminal są w panelu, a twój agent może go zmienić, cofnąć do wcześniejszej wersji albo przywrócić.

Pierwsze kroki

W Obsidianie zainstaluj wtyczkę Self-hosted LiveSync i podaj jej https://obsidian-livesync.sam.pethost.app jako serwer, admin jako nazwę użytkownika i hasło podane przy tworzeniu projektu. Bazę danych wtyczka założy sama.

Co uruchamia

Szablon to ten compose.yaml i zmienne, które zapisuje do .env projektu. Pethost uruchamia plik dokładnie tak, jak jest napisany.

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: