Najważniejszy wniosek: nie uznawaj obrazu za uszkodzony wyłącznie na podstawie błędu instalacji. Samodzielnie hostowany LiveSync wymaga poprawnych danych uwierzytelniających CouchDB, zapisywalnej trwałej pamięci masowej, inicjalizacji, CORS oraz dostępnego punktu końcowego. Szablon aplikacji instalowanej jednym kliknięciem nadal może wymagać ustawienia tych wartości.


Ustaw wymagane zmienne CouchDB
Bieżące zmienne CouchDB w projekcie nadrzędnym wymagają danych uwierzytelniających administratora i nazwy bazy danych:
COUCHDB_USER=admin
COUCHDB_PASSWORD=strong-random-password
COUCHDB_DATABASE=obsidiannotes
Przeczytaj logi kontenera, zanim zaczniesz losowo edytować konfigurację
docker ps -a | grep -i couch
docker logs --tail 200 <container-name>
Szukaj brakujących zmiennych, błędów uprawnień, problemów z montowaniem konfiguracji, błędów inicjalizacji lub konfliktów portów.
Trwała pamięć masowa musi umożliwiać zapis
Projekt nadrzędny zwraca uwagę w konfiguracji pamięci CouchDB, że właścicielem katalogów danych i konfiguracji może być UID 5984. Nieprawidłowy właściciel może zatrzymać kontener.
Zweryfikuj CouchDB przed uruchomieniem Obsidian
curl -u admin:YOUR_PASSWORD http://SERVER_IP:5984/_up
Projekt nadrzędny oczekuje, że kontrola stanu CouchDB zwróci prawidłowy status przed konfiguracją wtyczki.
Zainicjalizuj bazę danych LiveSync
Działający proces CouchDB to nie cała konfiguracja. Uruchom bieżącą ścieżkę inicjalizacji projektu nadrzędnego, aby wymagane wartości bazy danych i konfiguracji istniały przed połączeniem wtyczki Obsidian.
Synchronizacja zdalna wymaga bezpiecznej ścieżki HTTPS
Projekt nadrzędny udostępnia teraz profile Caddy, Tailscale i Cloudflare. Używaj zwykłego HTTP tylko do testów lokalnych; synchronizacja zdalna lub mobilna powinna korzystać z obsługiwanej ścieżki HTTPS.
BigBear obecnie oferuje pakiet Obsidian LiveSync oparty na CouchDB. Porównaj wygenerowany plik compose ze zmiennymi projektu nadrzędnego, zamiast zakładać, że któraś ze stron ma rację.
Katalog aplikacji ZimaOS obejmuje obciążenia związane z Obsidianem, a konfiguracja Dockera w CasaOS pomaga wyjaśnić różnice między ustawieniami szablonu a ustawieniami środowiska uruchomieniowego.
ZimaBoard 2 wystarcza do obsługi tego lekkiego obciążenia bazy danych; trwałość nośnika danych ma większe znaczenie niż surowa moc obliczeniowa.
Porównaj szablon z aktualną konfiguracją Compose projektu nadrzędnego
Aktualna konfiguracja Compose projektu nadrzędnego uruchamia CouchDB ze zmiennymi wymaganymi do ustawienia nazwy użytkownika i hasła, trwałymi danymi oraz dedykowanym plikiem konfiguracji LiveSync. Jeśli szablon społecznościowy się różni, ustal różnicę, zanim nazwiesz obraz kontenera wadliwym. Obraz, szablon Compose i konfiguracja aplikacji to trzy odrębne warstwy.
Nie wymuszaj pochopnie użytkownika kontenera CouchDB
Aktualna konfiguracja Compose projektu nadrzędnego wyraźnie ostrzega przed ustawianiem stałej użytkownik: wartość, ponieważ punkt wejścia CouchDB uruchamia się z uprawnieniami wystarczającymi do zapisu konfiguracji, a następnie przełącza się na UID CouchDB. Szablon zastępujący to zachowanie może powodować błędy uprawnień podczas uruchamiania.
Sprawdź CORS po prawidłowym działaniu punktu końcowego sprawdzania stanu
Sprawny /_up Odpowiedź potwierdza, że CouchDB działa, ale nie że klienci Obsidian mogą z niego korzystać. Przetestuj nagłówki odpowiedzi z originem Obsidian i potwierdź, że konfiguracja LiveSync zezwala na oczekiwane originy komputerów i urządzeń mobilnych.
Nie wystawiaj bazy danych do otwartego internetu
Port CouchDB 5984 to punkt końcowy bazy danych, a nie strona udostępniania dla klientów. W przypadku zdalnej synchronizacji preferuj obsługiwane przez projekt nadrzędny wzorce HTTPS — Caddy, Tailscale lub Cloudflare — zamiast bezpośredniego przekierowania z routera na port 5984.
Zastosuj tę kolejność rozwiązywania problemów
- Kontener pozostaje uruchomiony.
-
/_upzwraca stan „healthy” przy użyciu danych uwierzytelniających. - Dane trwałe przetrwają ponowne uruchomienie.
- Inicjalizacja została ukończona.
- CORS jest skonfigurowany prawidłowo.
- Punkt końcowy HTTPS działa zdalnie.
- URI, użytkownik, hasło i baza danych wtyczki Obsidian muszą odpowiadać wartościom serwera.
Przejście bezpośrednio do ustawień wtyczki przed wykonaniem kroków 1–5 znacznie utrudnia rozwiązywanie problemów.
FAQ
Czy obraz BigBear jest na pewno wadliwy?
Dyskusja źródłowa tego nie udowodniła. Najpierw porównaj jej konfigurację Compose z aktualnymi wymaganiami projektu nadrzędnego.
Dlaczego CouchDB może działać, podczas gdy Obsidian nie działa?
Inicjalizacja bazy danych, CORS, dane uwierzytelniające, nazwa bazy danych i adres URL punktu końcowego nadal muszą się zgadzać.
