1. Get the Compose file and environment template
mkdir conatus
cd conatus
curl -O https://raw.githubusercontent.com/nojusmorkunas/conatus/main/docker-compose.yml
curl -o .env https://raw.githubusercontent.com/nojusmorkunas/conatus/main/.env.example
2. Edit your credentials
Open .env and replace every replace-with-... value with your own:
# latest follows the newest stable release. Pin an exact version without the
# leading "v" to upgrade only when you choose.
CONATUS_VERSION=latest
CONATUS_PORT=4399
POSTGRES_USER=app
POSTGRES_PASSWORD=replace-with-a-long-random-password
POSTGRES_DB=app
AUTH_SECRET=replace-with-a-long-random-secret
S3_ACCESS_KEY=replace-with-a-random-access-key
S3_SECRET_KEY=replace-with-a-long-random-secret-key
# Optional: creates the first administrator on an empty database.
CONATUS_ADMIN_USERNAME=admin
CONATUS_ADMIN_PASSWORD=replace-with-a-long-random-password
If you use a domain or reverse proxy, also set AUTH_URL and PUBLIC_BASE_URL to the external HTTPS address. The reverse proxy guide has Caddy and nginx configs.
To sign in through Keycloak, Authentik or another OpenID Connect provider, set the AUTH_OIDC_* values described in .env.example.
3. Start Conatus
docker compose up -d
Docker Compose pulls the Conatus application, operations, PostgreSQL and Silo images. Silo stores attachments and is a maintained fork of MinIO. Open http://localhost:4399 and sign in with the administrator credentials from .env, then remove CONATUS_ADMIN_USERNAME and CONATUS_ADMIN_PASSWORD from .env.
Upgrading
Set CONATUS_VERSION to the new release, then run:
docker compose pull
docker compose up -d
Migrations run automatically before the application starts, and you can upgrade from any earlier published release. Back up the database first, since some migrations need a restore to roll back. See the upgrade guide.
Documentation
The full documentation is at useconatus.com:
- Environment variables
- Backups and restore
- Users, registration and rate limits
- REST API. The OpenAPI 3.1 description is at
/api/v1/openapi.json - Webhooks
- MCP server
- Migrating from Todoist
Contributing
Questions and ideas go in Discussions and bugs in Issues. See CONTRIBUTING.md for local setup, database migrations and the checks a pull request needs to pass.
License
AGPL-3.0-or-later. See LICENSE.