- CouchDB Server which configured about CORS for Obsidian and Self-hosted LiveSync.
- Automatically set up SSL Certificates by Let's Encrypt (With Caddy).
- If you do not have any domains, self-hosted-livesync-server-tailscale is available!
- Internet-accessible webserver
- Docker and docker-compose
- Valid domain
- Verbose logging (Just leave it to docker now)
- Automatic detection of malicious access.
- Clone the repository,
git clone [email protected]:vrtmrz/self-hosted-livesync-server.git - Create Caddy's network:
docker network create caddy - Configure files
caddy.handle_path_1: /e=_/*ondocker-compose.yml
You have to change thise=_to something your favorite secret word.authentication_redirect = /e=_/_utils/session.htmlonconf/local.ini
changee=_too, as same as you changed on 3.1..
- Set environment variables.
| name | value | example |
|---|---|---|
| COUCHDB_SERVER | Your server's domain | db.example.net |
| COUCHDB_USER | The account name you want to access | testuser |
| COUCHDB_PW | The password | testpassword |
- Run
docker-compose -f docker-compose.yml up
Note: If you using an arm machine,docker-compose -f docker-compose.yml -f docker-compose.arm.yml up - Check from the browser, open
https://COUCHDB_SERVER/e=_/_utils, and try to authenticate. - Check from Self-hosted LiveSync, as like below
| name | value | example |
|---|---|---|
| URI | https://COUCHDB_SERVER/e=_ | https://db.example.net/e=_ |
| Username | COUCHDB_USER | testuser |
| Password | COUCHDB_PW | testpassword |
| Database name | As you like | test |
- If you could access and use the database,
docker-compose -f docker-compose.yml startto enable your server. Note: ordocker-compose -f docker-compose.yml -f docker-compose.arm.yml start.
MIT