Hacker News new | ask | show | jobs
by kalev 1211 days ago
I think I’ve asked this question before but I really don’t understand why there is no managed docker compose hosting solution. I think Swarm did that, but I believe they stopped? Every project I worked on used compose locally, but had to transpose to some k8s/nomad setup in production. I’d love to just run ‘docker compose deploy’ or publish or whatever and it just gets deployed to the cloud + load balancing and autoscaling. What am I missing?
5 comments

It's not exactly what you're asking for, but <https://fly.io> is pretty neat. It's easy to get going and will deploy any docker images you want with a bit of their config added.

As for AWS ECS mentioned in the other reply -- it's great if you ever get it working, but it is a nightmare to learn and use.

Docker Compose cannot currently be deployed on fly.io: https://community.fly.io/t/deploy-with-docker-compose-yaml/4... .

Unfortunately, there's a huge gap between "single container" and "multiple, co-dependent containers". It's a far cry between services hosting a single container and ones offering to host entire stacks.

Right, I wasn't suggesting you could deploy with Docker Compose on fly.io. Hence why I prefaced my suggestion with "It's not exactly what you're asking for..."

And I think you're exaggerating the "huge gap" there. Fly.io can run multiple docker containers for you. Their docs are great so it wouldn't take much effort to learn how to create an equivalent or better setup that covers everything Docker Compose does (and more).

I agree fly.io comes close, but you’d still need to transition to ‘something else’ for deploying your compose project.
Coolify (https://coolify.io/) has support for deploying docker-compose based app. It works quite well and is easy to use. You still need to manage the server on which you deploy the tool, though.
Swarm still is a thing. The recentl docker release even has new features in it.

Also see https://github.com/BretFisher/awesome-swarm

You can do something like this with Bunnyshell (bunnyshell.com) It imports your docker-compose.yml and deploys to k8s. It has CLI and web UI.
You can use ECS for that.