4 ms·
I've been at a company where they weren't (yet) using containers nor K8S. The build process would just create VM images with the required binaries in there and
by Nextgrid 5y ago
I've been at a company where they weren't (yet) using containers nor K8S.
The build process would just create VM images with the required binaries in there and then deploy that to an autoscaling group.
It worked well and if you only ever intend to run a single service per machine then is the right solution.
- strikelaserclaw 5y agothis what my company does as well
- dolni 5y agoAt my workplace we use Docker to run services, but there is no container orchestration like Kubernetes. An AMI bakes in some provisioning logic and the container image. Autoscaling does the rest. Even without orchestration, I argue containers are useful. They abstract the operating system from the application and allow you to manage each independently. Much more easily than you'd be able to otherwise, anyway. Plus you can run that image locally using something like docker-compose for an improved developer experience.
- iangregson 5y agoI'm in this spot too. It's looks increasingly likely that an orchestration layer is in our near future. But we've got pretty far with this approach.
- dolni 5y agoWhat factors are causing you at container orchestration as opposed to continuing with your current strategy?
- brimble 5y agoI tend to use Docker heavily as basically just a cross-distro, isolated package and process manager that also presents config in a reasonably consistent manner. It's wildly better than dealing with "native" distro packages, unless you are all in on doing everything The Correct Way on a particular distro and have tooling in place to make that not suck. That it happens to use containers barely matters to me.
- zokier 5y ago> An AMI bakes in some provisioning logic and the container image That does sound bit weird setup to me; with something like Packer building an AMI is almost as easy as building a Docker image with Dockerfiles so the benefits of using Docker seem quite slim?
- dolni 5y agoNah, Docker still has lots of benefits. You can run a Docker image on a developer system, using docker-compose, and it could even be the exact same one running in prod. That takes a TON of variables out of the equation.
- css 5y agoSame here, the workflow is great.
- tailspin2019 5y agoI’m in the process of moving to exactly this approach. I’ve been trying to pick the right Linux distro to base my images on. Ubuntu Server is the low effort route but a bit big to redeploy constantly. I’ve also been looking at the possibility of using Alpine Linux which feels like a better fit but a bit more tweaking needed for compatibility across cloud providers. Unikernels are also interesting but I think that might be going too far in the other direction for my use case. For others doing this, I’d be interested in what distros you’re using?
- maxk42 5y agoUbuntu is too heavy. Try CentOS.
- tailspin2019 5y agoThanks, CentOS was on my radar too. I’ll take a closer look!
- Melatonic 5y agoIsnt CentOS basically discontinued at this point?
- paulryanrogers 5y agoIt's changed from a downstream distro to upstream. Rocky Linux has since appeared to take its place in the community, by one of the original CentOS founders.
- twistedcheeslet 5y agoHow so? Doesn't CentOS share a lot of the same issues as Ubuntu? Legitimate question.
- goodpoint 5y agoUrgh. If anything, use Debian.
- fragmede 5y agoContainer images are a decent way to get close to a root filesystem but with what approaches a REPL loop for debugging.
- secondcoming 5y agoMy company works this way. Our Jenkins creates a debian package, and deploying involves installing this package on a machine and creating an image. This image is then deployed to the ASGs. We operate in 5 regions in GCP.