containerfiles have the advantage that they can be cached locally, so for example an apt
operation in an image layer is faster to retrieve from the (local) cache than to run vanilla.
Converting the ci system to those is non-trivial, because it uses a lot of env vars, different configs, and numerous per-config hacks.
My understanding of docker is limited, but to pass env vars into a containerfile would require using ARG
in the file, as well as code to pass in the ARG at runtime via the command line. For hundreds of args, this should be possible, but verbose, which is why I haven’t looked at it yet.