Da última vez, vi com mais frequência pessoas usando packer.io do meu irmão mitchell para construir apenas contêineres DOCKER.IO, mas isso é uma coisa totalmente errada
O único motivo útil para usar o Packer.Io é e sempre será implantar um aplicativo em mais de um serviço onde o docker não está sendo executado em todas as máquinas. Ou provavelmente para testar um aplicativo em máquinas diferentes.
Mas se você usá-lo para construir um contêiner docker, você desacelera a construção do contêiner em mais de 100%, tudo o que ele faz é criar um arquivo docker, executar um contêiner e executar os provisionadores. com um arquivo .sh, por exemplo, mas que não salva de todo.
Você sempre deve criar contêineres do docker com um Dockerfile ou manualmente.