They are just warming up a local cache so they don’t have to download an image when they decide to start a container, right?
Tldr: building EC2 machine images (AMIs) with the needed Docker images pre-pulled reduces instance launch time.
Except, then I have another step in my deploy process. A docker container shouldn’t be so large this would matter anyway, especially if pulled from a source close to the VM (e.g. S3).
Using tools to create docker images and using tools to create AMIs seems like overhead. Maybe they will change the docker containers for new ones once the AMI is running, but still it feels like I would just deploy onto the AMI and spare myself some docker-related pain.
I don’t understand the problem they’ve solved. Without any kind of numbers (how big are the Docker images? How many are there?), it’s unclear why pre-baking the images helps. If startup time is that important, wouldn’t you want to launch Docker containers in a VM that’s already up and running, with the images already local to the VM?
And wouldn’t you have to rebuild those AMIs any time a single Docker image changes? Isn’t that more work/slower?