Hacker News new | ask | show | jobs
by Svenstaro 3426 days ago
I'm currently on an all-docker pipeline but I resent it. It's slow, tedious and everybody's trying to use docker against its design (everybody tries to make images with as few layers as possible, I think docker should just do away with the layers altogether). It also makes it harder than it should be to make an image that works both for local development and deployment at the same time. Also, docker-compose is riddled with fairly old but important bugs (for instance, Dockerignore files are ignored by docker-compose's build).

I'd much prefer doing simple bare-metal deployments again.

2 comments

> I think docker should just do away with the layers altogether

I'd take the opposite stance, really. As far as the image format, it's the major differentiation Docker has, and IMO a really clean way of keeping image pulls DRY. Once your hosts have pulled a single image, given that you don't actively undermine it, subsequent pulls, even for different images, only need to retrieve the absolute minimum since they already have hopefully pulled the majority of the file system.

If you run on AWS, we at Boxfuse (https://boxfuse.com) offer a solution that could work for you: tiny machine images (starting at 5 MB for Golang apps) generated in seconds, no layers, immutable infrastructure, blue/green deployments and auto-scaling directly at the VM level both on EC2 as well as on VirtualBox (for rapid local testing).

Disclaimer: I am the founder and CEO of Boxfuse