Over last few months we’ve moved our build infrastructure (Jenkins slaves, Gitlab CI runners, Prometheus\Grafana stack, etc) from VMs to Docker containers, and now in the middle of moving them to swarm \ stack mode.
Our scale is not that big though - about 100 Xeon cores in total, locally hosted.
We use Ubuntu 16.04 LTS and Windows 2016, and indeed Windows stability is lacking behind, but my perception is that it’s improving.
You mentioned Windows containers not restarting after reboot - we got that in the past. Problem with HNS starting slow. Which I see as problem on the Windows (Hyper-V) side, rather than Docker. Especially as we know Windows loves to reboot so often.
Anyway with the latest version (17.06.2-ee-6) and delayed start for Docker service (
sc.exe Config Docker Start= Delayed-Auto) problem seems to be gone.
I absolutely love the simplicity and power of docker compose\stack and swarm. And the fact that “batteries are included” - just install Docker engine, and you’ve got swarm and stack built-in.
I’m really impressed with the recent announcement that docker-compose syntax and Kubernetes YAML will be both supported in Docker EE, with ability to deploy either of them to swarm or k8s.
IMHO I would stay with Swarm for as much as it suits us, as my favourite Agile principle is: “Simplicity - the art of maximizing the amount of work not done - is essential.” But then again our scale is not huge, and we don’t require auto-scaling features.