Hacker News new | comments | ask | show | jobs | submit login
Docker Swarm and Digital Ocean
7 points by gvidon 10 months ago | hide | past | web | favorite | 9 comments
I'm running an app on Docker stack. And as stated in title it is based on Docker Swarm and Digital Ocean.

I'm relatively new to DevOps but need to say that I really like how easy compared to Kubernetes I could setup and run Docker Swarm on Digital Ocean. Reading doc took about 10 minutes and I could start a fleet of several nodes "infected" by docker agent. Then minor changes to existing docker-compose file (we deliver apps in docker containers). Finally "docker stack deploy" and that's it! App in the cloud with service level load balancer out of the box.

Needless to say that Digital Ocean nodes are cheap and I can run the cloud at significantly lower cost than similar one on AWS.

But, I wonder why isn't this approach that popular? I can't say there are a lot of docs/articles about swarm. Even worse — I'm struggling to find online services for orchestrating/monitoring swarm clouds (CLI is great, unless you have more than 3 nodes)

I admit that experienced DevOp guy can setup AWS to be cheaper and more advanced with Kubernetes. But is it worth the efforts if you don't expect high loads and your architecture is not that complex?

The difference between reality and Internet news/blogs can sometimes be vast, and we "problem solvers" have to be aware of that. There are hundreds or more enterprise companies using Docker EE, which is using Swarm currently as its orchestrator/scheduler. (see https://www.docker.com/customers) and I also recently ranted about the assumption that everyone is using one thing for orchestration. https://twitter.com/BretFisher/status/958416831659872256

IMO, a healthy ecosystem always has multiple opinions on how to solve a problem.

I'm biased and like Swarm for those that want a great UX (from dev through CI/CD to prod) and their needs match the problems that Swarm solves. I currently teach workshops and consult on Swarm because that's what my circles ask for. It doesn't make anyone wrong or better. These are all opinions on how to create container clusters and some teams like Mesos/DCOS, some Swarm, and some Kubernetes.

In the end, does Swarm solve your problems? If so, stick with it until it doesn't. Docker has publicly stated on their blog months ago that they are not EOL'ing Swarm, despite the news falsely stating Swarms demise. In Docker's main paid product, Docker EE, their new Kubernetes integration actually uses Swarm to help ease K8s deployment AFAIK, so at this point, I feel its future is solid and don't have a problem using it or recommending it. It's still early days for the ecosystem through, so I might be singing a different tune in two years. Swarm may not be the most talked about container orchestrator, but like others, it does solve problems for many people.

I agree. The story is that Kubernetes has 'won' but I still love the simplicity of Docker Swarm. And I would definitely recommend anyone to start with it and maybe later, if you have hundreds or thousands of nodes, migrate to k8s.

I also recommend starting with Swarm (not necessarily going to production) and then learning k8s next. This is the path I am taking. Kubernetes is different in surprising ways, but it helps to already have the basic concepts down by learning Swarm.

one thing i need to point out is: swarm intentionally ship many features conflict with kubernetes in order to compete with it, then it failed, and leaves migrations somehow impossible. so if u only have small cluster and love swarm thing and does not need more mature orchestrations level, just keep it. but recommendng others jump in this hole is definitely Irresponsible.

I learned first-hand that migrations are difficult. Do not go to production with Swarm if you are thinking of migrating to k8s. Use it for experimentation and learning.

I respectfully disagree. If you move your existing stack to Docker Swarm, by far most of the work is in containerization. Creating Dockerfiles, decoding how containers interact, deciding on environment variables, deployment mechanisms etcetera. When moving to Kubernetes the same thing happens: most of the work goes to those same activities. That work is not lost if you defer moving to k8s to later. And that move itself will be so easy compared to the containerization.

So, in most cases yo don't need k8s? :)

Indeed. Looking at simplicity, I'd say Docker Swarm compares to k8s as Digital Ocean to AWS.

when a open source project gets less attention, it’s dead. u can keep your swarm thing as hobby. i have mine too, i love VeltOS, but will i install it in my servers? NO!

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact