Hi list,
We came up with an idea how to use Docker in copr at Env&Stacks WG meeting:
Let's say you are a maintainer of few packages or you just want to try to change/fix something in some packages. You decide to use copr for building these changed packages.
At the moment, when your build is done, you have to install them on your system or to some virtual machine which requires some additional typing, time and can cause potential problems if you've broken something in the code.
My idea would be to enhance copr so that it is able to build layered Docker image which would contain newly built packages. User could then download/pull the image and run it as container - that could mean either run bash there, some specific command or even some automatic test.
I am not sure about the build process yet - we need to discuss it - copr can either require Dockerfile from user or the Dockerfile could be probably constructed dynamically. Basic Dockerfile would need to add repo files and install/update built packages in the image. If we want to get it further we could think of adding some configuration, run specific command on container start or let user select base image he would like to use, but these are implementation details.
Another question that needs to be answered is in what way the built image would be provided to the user - it can be either *.tar.gz which he could download and call docker load -i or we can have docker registry for these images and push them there. User would then be able to run docker pull to get the image.
What do you think? Do you think this makes sense for copr?
Thanks & regards, Vaclav