3 ms·
How do you deploy a golang app? How do you handle rollbacks? Maybe not applicable but how do you scale up? The advantage of something like docker is it unlocks
by maccard 5y ago
How do you deploy a golang app? How do you handle rollbacks? Maybe not applicable but how do you scale up?
The advantage of something like docker is it unlocks tools like k8s, ecs, azure container instances, DO app platform etc.
- hughrr 5y agodeploy = basically scp and do a blue/green switch over. rollbacks = deploy the last version Scale up = add some more instances and redeploy the current version (not an issue as our load is fairly consistent) All of those tools, which I have used extensively, increase complexity tenfold. Just considering kubernetes resource allocation and CNI is an art which requires full time staff to manage. Fargate is the only reasonable abstraction I have seen so far on this front.
- maccard 5y agoI'm actually going to skip most of your reply to this: > Fargate is the only reasonable abstraction I have seen so far on this front. This is the starting point (actually Azure [0] and DigitalOcean [1] are even simpler), not setting up an autoscaling group of ec2 instances and considering resource usage. If you build on top of any of those three platforms, you write a dockerfile, write a service file, and point DNS at a load balancer and you're done. [0] https://docs.microsoft.com/en-gb/azure/container-instances/ https://docs.microsoft.com/en-gb/azure/container-instances/ [1] https://docs.digitalocean.com/products/app-platform/ https://docs.digitalocean.com/products/app-platform/