WIP: CI test run with unified container
Simplifies the docker container setup for CI.
Previously, we needed docker-compose to fire up our own containers inside CI. While this is more independent from the gitlab ci system, it limits us to special gitlab runner configuration because we need to access the docker daemon within the CI runner.
This moves most docker-compose logic into the gitlab CI system using services instead and puts all services needing access to our code into the CI container itself.
Goal is to speedup the CI run by
- needing less time to build specialized CI images inside the CI run
- being able to run multiple pipelines in parallel (old system limits us to concurrency=1 on the gitlab runner)
- having an easy setup at hand to splitup the test pipeline itself to multiple jobs for further speedup