Over the last few weeks I’ve put together a pull request for Packer which should be releasing soon with version 0.5.2. With my usage of Packer and Docker, I’ve always found it an annoyance to have to import the Packer built Docker image separately, using Docker import, rather than have Packer handle importing with a post-processor. Once 0.5.2 releases, the deployment of a Packer built Docker image can be optimized through the use of the docker-push and docker-import post processors, through a build template with post-processors much like the following:
WARNING: The openSUSE base image used here is no longer available due to SUSE Studio being deprecated in favor of the Open Build Service (https://openbuildservice.org/2017/09/27/suse-studio-express/). Much of the content here should still be decently accurate however, so I am keeping this post as an archive and reference. When Dockerfiles Aren’t Enough Dockerfiles are a limited solution to a complex problem: the provisioning of Docker images. Dockerfiles at their core operate much like a simple shell script, being a list of instructions to get from a certain state, or base image, to that of a final state, or output image.