Conclusión clave: no consideres que la imagen está dañada basándote únicamente en el error de instalación. LiveSync autoalojado necesita credenciales de CouchDB válidas, almacenamiento persistente con permisos de escritura, inicialización, CORS y un punto de conexión accesible. Una plantilla de aplicación de un solo clic aún puede requerir esos valores.


Establece las variables necesarias de CouchDB
Las variables de CouchDB de LiveSync actuales del proyecto original requieren credenciales de administrador y un nombre de base de datos:
COUCHDB_USER=admin
COUCHDB_PASSWORD=strong-random-password
COUCHDB_DATABASE=obsidiannotes
Lee los registros del contenedor antes de editar cosas al azar
docker ps -a | grep -i couch
docker logs --tail 200 <container-name>
Busca variables faltantes, errores de permisos, fallos en los montajes de configuración, fallos de inicialización o conflictos de puertos.
El almacenamiento persistente debe permitir la escritura
La configuración de almacenamiento de CouchDB del proyecto original indica que los directorios de datos y configuración pueden pertenecer al UID 5984. Una propiedad incorrecta puede impedir que el contenedor se inicie.
Verifica CouchDB antes de Obsidian
curl -u admin:YOUR_PASSWORD http://SERVER_IP:5984/_up
El comprobador del estado de CouchDB del proyecto original espera un estado saludable antes de configurar el complemento.
Inicializa la base de datos de LiveSync
Un proceso de CouchDB en ejecución no constituye toda la configuración. Ejecuta la ruta de inicialización actual del proyecto original para que existan los valores necesarios de base de datos y configuración antes de conectar el complemento de Obsidian.
La sincronización remota necesita una ruta HTTPS segura
El proyecto original ahora ofrece perfiles de Caddy, Tailscale y Cloudflare. Usa HTTP sin cifrado solo para pruebas locales; la sincronización remota o móvil debe usar una ruta HTTPS compatible.
BigBear actualmente ofrece un paquete de Obsidian LiveSync basado en CouchDB. Compara la composición generada con las variables del proyecto original en lugar de asumir que una de las dos partes es correcta.
El catálogo de aplicaciones de ZimaOS incluye cargas de trabajo relacionadas con Obsidian, y la configuración de Docker de CasaOS ayuda a explicar las diferencias entre la plantilla y la configuración en tiempo de ejecución.
ZimaBoard 2 es suficiente para esta carga de trabajo de base de datos ligera; la durabilidad del almacenamiento importa más que la potencia de cálculo bruta.
Compara la plantilla con el compose actual del proyecto
El compose actual del proyecto inicia CouchDB con las variables obligatorias de nombre de usuario y contraseña, datos persistentes y un archivo de configuración dedicado para LiveSync. Si una plantilla de la comunidad difiere, identifica la diferencia antes de etiquetar la imagen del contenedor como defectuosa. La imagen, la plantilla de compose y la configuración de la aplicación son tres capas independientes.
No fuerces casualmente el usuario del contenedor de CouchDB
El compose actual del proyecto advierte explícitamente contra la configuración de un valor fijo usuario: valor porque el punto de entrada de CouchDB se inicia con privilegios suficientes para escribir su configuración y luego cambia al UID de CouchDB. Una plantilla que sobrescriba este comportamiento puede provocar errores de permisos durante el inicio.
Comprueba CORS después de que funcione el endpoint de estado.
Un estado saludable /_up la respuesta demuestra que CouchDB está en ejecución, no que los clientes de Obsidian puedan usarlo. Prueba los encabezados de respuesta con un origen de Obsidian y confirma que la configuración de LiveSync permite los orígenes de escritorio/móvil esperados.
Mantén la base de datos fuera de la Internet pública
El puerto 5984 de CouchDB es un endpoint de base de datos, no una página para compartir con consumidores. Para la sincronización remota, prioriza los patrones HTTPS compatibles con el proyecto, como Caddy, Tailscale o Cloudflare, en lugar de reenviar directamente el router al puerto 5984.
Sigue este orden de resolución de problemas
- El contenedor permanece en ejecución.
-
/_updevuelve un estado saludable con las credenciales. - Los datos persistentes sobreviven al reinicio.
- La inicialización se completa.
- CORS está configurado correctamente.
- El endpoint HTTPS funciona de forma remota.
- El URI, el usuario, la contraseña y la base de datos del complemento de Obsidian coinciden con los valores del servidor.
Saltar directamente a la configuración del complemento antes de completar los pasos 1–5 dificulta mucho más la resolución de problemas.
Preguntas frecuentes
¿La imagen de BigBear es definitivamente defectuosa?
La discusión original no lo demostró. Compara primero su compose con los requisitos actuales del proyecto.
¿Por qué CouchDB puede ejecutarse mientras Obsidian falla?
La inicialización de la base de datos, CORS, las credenciales, el nombre de la base de datos y la URL del endpoint aún deben coincidir.
