Swarm has some limitations, I outlined them here: https://www.reddit.com/r/docker/comments/10w7pfs/comment/j7l...
I’ve seen docker compose deployments where the only missing part was the ability to replace the container without downtime. Swarm would also solve this problem, but it won’t always be as simple as redeploying the stack in swarm mode, especially if you rely on `docker-compose run` in your deployment process.