2.9 KiB
Docker
The Dockerfile supplied with this application is development or demonstration docker. It runs a self contained version of kimai2 against a sqlite database in the docker container.
There is an official docker repo for the kimai app that includes the Docker file from this repo and a docker file suitable for running in a production environment.
- The docker repo: https://github.com/tobybatch/kimai2
- That repo on dockerhub auto-building the prod and dev conatiners: https://hub.docker.com/r/kimai/kimai2.
Any issues with the container rather than the application itself should be raised here.
Build the docker
docker build -t kimai/kimai2:dev .
Run the docker
docker run -ti -p 8001:8001 --name kimai2 --rm kimai/kimai2:dev
You can then access the site on http://127.0.0.1:8001. If that doesn't work check the IP of your docker:
docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' kimai2
You can find Kimai at that IP on port 8001.
Mac using docker-machine
When using dock-machine on your Mac, you need to use the IP of your machine.
Considering you started the machine named default, you find the IP with:
docker-machine ip default
Running commands in the docker
You can run any command in the container in this fashion once it is started. Add -ti to attach a terminal.
docker exec -ti kimai2 bash
Create a user and dummy data
See the docs here for full instructions, but this creates a user admin/admin with all privileges.
docker exec kimai2 bin/console kimai:create-user admin admin@example.com ROLE_SUPER_ADMIN admin
To install the fixtures:
docker exec kimai2 bin/console kimai:reset-dev
Developing against the docker
It is possible to mount your source tree and sqlite DB into the container at run time.
docker run --rm -d -p 8001:8001 \
-v $(pwd)/src:/opt/kimai/src \
-v $(pwd)/var/data/kimai.sqlite:/opt/kimai/var/data/kimai.sqlite \
--name kimai2 kimai/kimai2:dev
Now edits in the local file tree will be served by the container and database changes will persist.
See The official docker documentation for more options on running the container.
Further docker solutions
As there are several approaches to docker images, you have multiple docker images to choose from. They were built by the community, we do not support them - for question please ask in their repositories:
- dysonspherelab (for more infos read this issue)
- felixhummel
- Haidy777 (for more infos read this issue)