
Deploy Kimai on Your Own Server
With Kimai, the boring process of feeding spreadsheets with your working hours is not only simplified, it also offers dozens of other exciting features that you don't even know you're missing!
Want to deploy Kimai on your server faster? Try Senate with one-command setup, automatic HTTPS and monitoring.
What is Kimai?
With Kimai, the boring process of feeding Excel spreadsheets with your working hours is not only simplified, it also offers dozens of other exciting features that you don't even know you're missing so far!
Self-Host Kimai
Follow these steps to deploy on your own server.
Install Docker
Skip this step if Docker is already installed on your server.
curl -fsSL https://get.docker.com | sh
Configure
Customize the settings below. Defaults work for most cases.
General
Deploy
Copy the configuration and run it on your server.
services:
kimai2:
image: lcxat/nginx-fpm-reverse-proxy:1.21.3
environment:
FPM_NGINX_HOST: kimai2-fpm
volumes:
- kimai2-public:/opt/kimai/public:ro
depends_on:
- kimai2-fpm
kimai2-db:
image: mariadb:10
environment:
MYSQL_DATABASE: ${mariadb}-db
MYSQL_PASSWORD: ${mariadb}-pass
MYSQL_ROOT_PASSWORD: ${mariadb}-rootpass
MYSQL_USER: ${mariadb}-user
volumes:
- kimai2-db-data:/var/lib/mysql
kimai2-fpm:
image: kimai/kimai2:fpm-1.15.2-prod
environment:
ADMINMAIL: ${kimai}-adminmail
ADMINPASS: ${kimai}-adminpass
DATABASE_URL: mysql://${mariadb}-user:${mariadb}-pass@kimai2-db/${mariadb}-db
MAILER_FROM: ${kimai}-mailerfrom
MAILER_URL: ${kimai}-mailerurl
TRUSTED_HOSTS: kimai2.your-domain.com,nginx,localhost,127.0.0.1
volumes:
- kimai2-public:/opt/kimai/public
depends_on:
- kimai2-db
volumes:
kimai2-public: {}
kimai2-db-data: {}
Then run:
docker compose up -d
Access
Once started, access your app at http://localhost:80
Why Self-Host Kimai?
Full Data Ownership
Your data stays on your servers. No third-party access.
No Monthly Fees
Pay only for your server. No per-seat or usage charges.
Complete Control
Customize, backup, and scale on your own terms.
Privacy & Compliance
Meet GDPR, HIPAA, or internal security requirements.
Technical Details
Docker Image
lcxat/nginx-fpm-reverse-proxy:${nginx_version}Official Docs
www.kimai.orgWant to go faster?
Try Senate! Senate handles Docker, HTTPS, updates, and monitoring for you. Deploy any of our 300+ apps with a single command.
Install on any Linux server:
sh -c "$(curl -sSL https://get.senate.sh)"