Run Keeper.sh on your own server

Run Keeper.sh on your own hardware and stop your calendars double-booking. Every account on your own instance gets every paid sync feature, with no plan limits.

Every paid sync feature, with no plan limits

Every account on your own instance gets every paid feature: unlimited accounts and connections, updates every minute, event filters, and uncapped API and MCP calls.

Works with the same calendars as the hosted version

Google Calendar, Outlook, iCloud, Fastmail and any CalDAV server all work. You can also paste a calendar link and copy events out of it. Google and Outlook need OAuth apps you register yourself.

Get it running with a single container

The keeper-standalone image bundles the web, API, cron, worker and MCP services with PostgreSQL and Redis. Six other images let you split those out if you want to place each part yourself.

Your calendar data sits on your hardware

Your events, your connections and your linked accounts live in a PostgreSQL database you run. CalDAV passwords are encrypted with a key you generate. Your instance talks straight to your calendar providers, with nothing going through keeper.sh.

Anyone can read the code

The hosted version runs the same code you deploy, so you can check what it does with your calendars. Keeper.sh is open source under AGPL-3.0 and takes contributions.

Getting it running

The README has the compose files, the environment variables, and the OAuth setup for Google and Microsoft.

What you need

Docker and Docker Compose, a machine to run them on, and a domain if you want to reach the instance from outside your network.

Google Calendar and Outlook also need OAuth apps registered under your own Google Cloud and Azure accounts.

What you do

Download the keeper-standalone image and generate the two secrets it asks for. Set TRUSTED_ORIGINS to the URL you will serve it on, and put it behind a reverse proxy that handles TLS.

Read the self-hosting guide

Frequently Asked Questions

What does running it myself cost?

There is no licence fee, and every account on your instance gets every paid sync feature. You pay instead in a server, a domain, upgrades, backups, and being the person paged when it breaks. Hosted Keeper.sh is $5 a month with all of that handled.

Which image should I start with?

keeper-standalone, behind a reverse proxy. It bundles the web, API, cron, worker and MCP services with PostgreSQL and Redis, and wires them together for you. Use the other images if you want to place each part yourself.

Do I need Google and Microsoft OAuth apps?

Only for Google Calendar and Outlook. Those two need client credentials you register yourself. iCloud, Fastmail, CalDAV servers and calendar links need nothing extra.

How do updates work?

Updates ship as Docker images. Pin yours to a major.minor tag such as 2.13. Pinning to latest can hand you a breaking change the next time you upgrade.

Where do my credentials and events live?

In the PostgreSQL database your instance uses. CalDAV passwords are encrypted with the key you generate when you set the instance up.

Ready to run it yourself?

The setup guide covers every image and every environment variable. Or skip the server and use the hosted version.

Can Keeper.sh use cookies for analytics?