/kimai2

Docker containers for the kimai2 web application including docker-compose and kubernetes/helm deployment.

Primary LanguageDockerfileMIT LicenseMIT

Kimai Dockers

We provide a set of docker images for the Kimai v2 project.

The built images are available from Kimai v2 at Docker Hub.

Deving and Contributing

We use commit linting to generate commits that we can auto generate changelogs from. To set these up, you will need node/nvm installed:

nvm use
npm install

See CONTRIBUTING.md for more details.

Quick start

Run the latest production build:

  1. Start a DB

        docker run --rm --name kimai-mysql-testing \
            -e MYSQL_DATABASE=kimai \
            -e MYSQL_USER=kimai \
            -e MYSQL_PASSWORD=kimai \
            -e MYSQL_ROOT_PASSWORD=kimai \
            -p 3399:3306 -d mysql
  2. Start Kimai

        docker run --rm --name kimai-test \
            -ti \
            -p 8001:8001 \
            -e DATABASE_URL=mysql://kimai:kimai@${HOSTNAME}:3399/kimai \
            kimai/kimai2:apache
  3. Add a user using the terminal

        docker exec -ti kimai-test \
            /opt/kimai/bin/console kimai:create-user admin admin@example.com ROLE_SUPER_ADMIN

Now, you can access the Kimai instance at http://localhost:8001.

Note: If you're using Docker for Windows or Docker for Mac, and you're getting "Connection refused" or other errors, you might need to change ${HOSTNAME} to host.docker.internal. This is because the Kimai Docker container can only communicate within its network boundaries. Alternatively, you can start the container with the flag --network="host". See here for more information.

Keep in mind that this Docker setup is transient and the data will disappear when you remove the containers.

    docker stop kimai-mysql-testing kimai-test
    docker rm kimai-mysql-testing kimai-test

Using docker-compose

This will run the latest prod version using FPM with an nginx reverse proxy

See the docker-compose.yml in the root of this repo.

Documentation

https://tobybatch.github.io/kimai2/