Setup Kimai with Caddy and MariaDB on Fedora 37
Kimai is a time-tracking software designed for businesses and freelancers to monitor and manage their working hours efficiently. It offers features such as time recording, project tracking, invoicing, and reporting, providing users with detailed insights into their productivity and project timelines.
Wording in this tutorial
string |
meaning |
---|---|
foo.net |
domain |
xxxxxxxxx |
any string |
xx.xx.xxx.xx |
IPv4 address |
xxxx:xxx:xxxx:xxxx::1 |
IPv6 address |
Install packages
Configure MariaDB
Create user and database.
CREATE DATABASE kimai; CREATE USER caddy@localhost IDENTIFIED BY 'THE_PASSWORD'; GRANT ALL PRIVILEGES ON kimai.* TO caddy@localhost; FLUSH PRIVILEGES; # Test priviledges: SHOW GRANTS FOR caddy@localhost; EXIT
sudo -u caddy vi /var/www/kimai/.env
:
Configure PHP
sudo vi /etc/php.ini
:
Prepare Kimai
Configure Caddy
sudo nvim /etc/caddy/Caddyfile.d/foo.net.caddyfile
foo.net { root * /var/www/kimai/public php_fastcgi unix//run/php-fpm/www.sock file_server encode gzip # rewrite * /index.php?q={path}&{query} log { output file /var/log/caddy/foo.net-access.log } @static { file path *.ico *.css *.js *.gif *.jpg *.jpeg *.png *.svg *.woff *.pdf *.webp } header @static Cache-Control max-age=5184000 }
Configure PHP
Configure Kimai
Create first user:
Some Kimai settings
Customers
Projects
-
Activities
assign to a project if related
define hourly rate
-
Time rounding
E.g., rounding of the duration in minutes: 15
Settings -> Invoice number format