This repository provides a Docker container for configuring CouchDB specifically for use with Obsidian LiveSync. It automates the setup process by parsing the bash script (couchdb-init.sh
) provided by obsidian-livesync's maintainer and updating CouchDB's configuration file (local.ini
) according to the settings the plugin needs.
The container is built and published automatically via GitHub Actions.
- Automated CouchDB Configuration: Extracts necessary settings for Obsidian LiveSync from the bash script created by the plugin maintainer.
- Build time configuration: Configures couchDB at build time via configuration files instead of using couchDB APIs which simplifies the process.
- Auto-Publishing: Docker images are automatically built and pushed to a container registry via GitHub Actions.
To use the pre-built image, pull it from the container registry:
docker pull docker.io/docker-obsidian-livesync-couchdb:latest
Run the container with CouchDB configured for Obsidian LiveSync:
docker run -d \
-e SERVER_DOMAIN=example.com \
-e COUCHDB_USER=username \
-e COUCHDB_PASSWORD=password \
-e COUCHDB_DATABASE=obsidian \
-p 5984:5984 \
docker.io/oleduc/docker-obsidian-livesync-couchdb:master
Or via docker-compose
version: "3.8"
services:
couchdb-obsidian-livesync:
image: docker.io/oleduc/docker-obsidian-livesync-couchdb:master
container_name: couchdb-obsidian-livesync
restart: always
environment:
SERVER_URL: ${SERVER_URL}
COUCHDB_USER: ${COUCHDB_USER}
COUCHDB_PASSWORD: ${COUCHDB_PASSWORD}
COUCHDB_DATABASE: ${COUCHDB_DATABASE}
ports:
- "${COUCHDB_PORT:-5984}:5984"
volumes:
- ${COUCHDB_DATA}:/opt/couchdb/data
To verify the updated configuration:
Open your CouchDB dashboard (http://example.com:5984/_utils).
Check that the settings are applied under /_node/_local/_config.
This repository is licensed under the MIT License. Contributions are welcome!