디스코드 솔루션

CasaOS에서 Obsidian LiveSync CouchDB가 실패하는 이유: 구성해야 할 사항

A CasaOS user repeatedly failed to install or start an Obsidian LiveSync CouchDB app, while replies disagreed on whether the BigBear image itself was broken.

핵심 결론: 설치 오류만으로 이미지를 문제가 있다고 판단하지 마세요. 자체 호스팅 LiveSync에는 정상적으로 작동하는 CouchDB 자격 증명, 쓰기 가능한 영구 저장소, 초기화, CORS 및 연결 가능한 엔드포인트가 필요합니다. 원클릭 앱 템플릿이라도 이러한 값을 요구할 수 있습니다.

CasaOS Obsidian LiveSync CouchDB 설치 실패 스크린샷
생성된 컨테이너 구성과 로그를 사용하여 장애 발생 계층을 확인하세요.
Obsidian LiveSync CasaOS 설정의 CouchDB 컨테이너 오류
정확한 컨테이너 오류에 따라 자격 증명, 저장소, 초기화 또는 네트워킹을 수정해야 합니다.

필수 CouchDB 변수 설정

현재 업스트림 LiveSync CouchDB 변수에는 관리자 자격 증명과 데이터베이스 이름이 필요합니다.

COUCHDB_USER=admin
COUCHDB_PASSWORD=strong-random-password
COUCHDB_DATABASE=obsidiannotes

무작위로 수정하기 전에 컨테이너 로그를 확인하세요

docker ps -a | grep -i couch
docker logs --tail 200 <container-name>

누락된 변수, 권한 오류, 구성 마운트 실패, 초기화 실패 또는 포트 충돌을 확인하세요.

영구 저장소는 쓰기 가능해야 합니다

업스트림 CouchDB 저장소 설정에 따르면 데이터 및 구성 디렉터리의 소유자가 UID 5984일 수 있습니다. 소유자가 올바르지 않으면 컨테이너가 중지될 수 있습니다.

Obsidian 전에 CouchDB 확인

curl -u admin:YOUR_PASSWORD http://SERVER_IP:5984/_up

업스트림 CouchDB 상태 점검에서는 플러그인 구성 전에 정상 상태를 요구합니다.

LiveSync 데이터베이스 초기화

실행 중인 CouchDB 프로세스만으로는 설정이 완료되지 않습니다. Obsidian 플러그인을 연결하기 전에 필요한 데이터베이스 및 구성 값이 존재하도록 현재 업스트림 초기화 경로를 실행하세요.

원격 동기화에는 안전한 HTTPS 경로가 필요합니다

업스트림 프로젝트는 이제 Caddy, Tailscale, Cloudflare 프로필을 제공합니다. 로컬 테스트에는 일반 HTTP만 사용하고, 원격/모바일 동기화에는 지원되는 HTTPS 경로를 사용해야 합니다.

BigBear는 현재 CouchDB를 기반으로 한 Obsidian LiveSync 패키지를 제공합니다. 어느 한쪽이 옳다고 가정하지 말고, 생성된 compose를 업스트림 변수와 비교하세요.

ZimaOS 앱 카탈로그에는 Obsidian 관련 워크로드가 포함되어 있으며, CasaOS Docker 구성은 템플릿과 런타임 설정의 차이를 이해하는 데 도움이 됩니다.

ZimaBoard 2는 이 경량 데이터베이스 워크로드에 충분하며, 순수한 연산 성능보다 스토리지의 내구성이 더 중요합니다.

템플릿을 현재 업스트림 compose와 비교하세요.

현재 업스트림 compose는 필요한 사용자 이름/비밀번호 변수, 영구 데이터 및 전용 LiveSync 구성 파일을 사용하여 CouchDB를 시작합니다. 커뮤니티 템플릿이 다르다면 컨테이너 이미지에 문제가 있다고 판단하기 전에 차이점을 확인하세요. 이미지, compose 템플릿 및 애플리케이션 구성은 서로 다른 세 계층입니다.

CouchDB 컨테이너 사용자를 함부로 강제하지 마세요.

현재 업스트림 compose는 고정된 사용자 설정에 대해 명시적으로 경고합니다. 사용자: 값인 이유는 CouchDB 엔트리포인트가 충분한 권한으로 시작하여 구성을 작성한 다음 CouchDB UID로 권한을 낮추기 때문입니다. 이 동작을 재정의하는 템플릿은 시작 중 권한 오류를 일으킬 수 있습니다.

상태 엔드포인트가 작동한 후 CORS를 확인하세요.

정상 상태 /_up 응답은 CouchDB가 실행 중임을 보여줄 뿐, Obsidian 클라이언트가 이를 사용할 수 있다는 뜻은 아닙니다. Obsidian 오리진을 사용해 응답 헤더를 테스트하고 LiveSync 구성이 예상되는 데스크톱/모바일 오리진을 허용하는지 확인하세요.

데이터베이스를 인터넷에 공개하지 마세요.

CouchDB 포트 5984는 데이터베이스 엔드포인트이지 소비자 공유 페이지가 아닙니다. 원격 동기화에는 5984로 라우터를 직접 포워딩하는 대신 Caddy, Tailscale 또는 Cloudflare 같은 업스트림 지원 HTTPS 방식을 사용하세요.

다음 문제 해결 순서를 사용하세요.

  1. 컨테이너가 계속 실행됩니다.
  2. /_up 자격 증명으로 정상 상태를 반환합니다.
  3. 영구 데이터가 재시작 후에도 유지됩니다.
  4. 초기화가 완료됩니다.
  5. CORS가 올바르게 설정되어 있습니다.
  6. HTTPS 엔드포인트가 원격에서 작동합니다.
  7. Obsidian 플러그인의 URI/사용자/비밀번호/데이터베이스가 서버 값과 일치합니다.

1~5단계를 건너뛰고 바로 플러그인 설정으로 이동하면 문제 해결이 훨씬 어려워집니다.

FAQ

BigBear 이미지에 확실히 문제가 있나요?

원본 논의만으로는 이를 입증할 수 없습니다. 먼저 해당 compose를 현재 업스트림 요구 사항과 비교하세요.

왜 CouchDB는 실행되는데 Obsidian은 실패하나요?

데이터베이스 초기화, CORS, 자격 증명, 데이터베이스 이름 및 엔드포인트 URL이 여전히 일치해야 합니다.