Kimai – Time Trakcer installation deployment using Docker

About

Kimai is a free open source timetracker. It tracks the time you spend with various pre-set projects and prints out a summary of your activities on demand. The automated docker Kimai time tracker image “linuxconfig/kimai” can be used to instantly deploy the Kimai time tracker on your docker hosts.

kimai time tracker installation docker

Configuration

The Kimai runs on Debian GNU/Linux system featuring Apache web server, MariaDB ( MySQL ), database and PHP5. After creating a docker container based on “linuxconfig/kimai” docker image, a port 80 will be exposed which can be access on the docker host for an immediate Kimai web configuration/installation as well as later access.

Configured MySQL users:passwords:

  • root:”empty password”
  • admin:”pass”

Configured MySQL databases:

  • kimai

Exposed ports:

  • 80

Deployment

The below command can be used to download and create a new docker container called kimai and link your docker host system’s port 80 with container’s exposed port 80.

# docker run -d --name=kimai -p 80:80 linuxconfig/kimai

Usage

Once you deploy a new docker kimai container using the above command, you can immediately access its installation wizard by pointing your browser to http://localhost. From here, simply follow Kimai’s installation wizard by using the configuration settings provided above. Once your installation is complete Kimai will complain about the existence of the installer directory. To stop this message from appearing simply remove installer directory:

# docker exec kimai rm -fr /var/www/html/installer

Additional information

Change MariaDB Password

Use the following linux command to update or reset MariaDB user password. The below command will set a new admin user password:

# docker exec -it kimai mysqladmin -uadmin -ppass password abc123

To create a new database eg. kimai2 enter:

# docker exec -it kimai mysqladmin -uadmin -ppass create kimai2

Backup Database

In order to be able backup MySQL database from a docker host we need to expose MySQL port locally when creating a new docker container. Example:

# docker run -d --name=kimai -p 80:80 -p 4444:3306 linuxconfig/kimai

After that we are able to simply create a database backup with:

# mysqldump --host=127.0.0.1 --port=4444 -u admin -ppass kimai > kimai.sql


Comments and Discussions
Linux Forum