Containers: Docker, Compose and Swarm

Expert

The release that looked fine

Releases no longer drop requests: healthchecks and start-first did it. But last month 1.4.2 converged, everyone went home, and its tasks crashed every forty seconds all night (ops/postmortem-1.4.2.md). Today at 0:30 the CI ships 1.6.0. Whatever 1.6.0 turns out to be, the shop must end up on a version that works, with no one typing a command.

Your terminal is on manager-1 (drained); the API runs on worker-1 and worker-2. registry.shop.internal already holds 1.6.0: you may try it on the cluster, as long as you bring 1.5.1 back. The test calls http://<cluster>/products every minute for two hours; at 0:30 the CI runs docker service update --image registry.shop.internal/shop/api:1.6.0 shop_api.

What your server must hold

  • stack.outdatedTasks = 0
  • stack.updatePaused = 0
  • Availability ≥ 99 %

What you will master