5
votes

Can someone please explain the advantages/disadvantages using the following when building container images, rather than using the dockerfile.

  1. Packer - tool for creating machine and container images for multiple platforms from a single source configuration

  2. Dockramp - A Client-driven Docker Container Image Builder

1

1 Answers

6
votes
  1. Packer is a tool that initially was created to create AWS AMIs or base VM images in AWS. It has been extended to be used with containers, a lot of different Virtualization software such as VMware, KVM/QEMU, and other cloud/IaaS providers like DigitalOcean. It was developed by Hashicorp but it's open source.

  2. Dockramp is an alternative to using docker build it uses the same Dockerfile that docker build would use but with some additional enhancements. For example, it can use accept heredocs in the RUN command for multiple line bash commands.

Docker/LXC is fairly fast but the main advantage of building images (and this applies to Virtualization images too) is that you can have a fully installed application or application stack from the get-go. This tends to work better in autoscaling environments because it takes less time for your application to start servicing traffic either in a container or VM.

When you are creating your docker image all the time with your Dockerfile it needs to run a series of steps before becoming 'ready', hence it might take longer to start servicing traffic.

Hope it helps.