蓝绿 Consul 部署:PHP、Java 和 Node.js 示例


使用 Consul 和 Registrator 在服务层上进行零停机 Docker-Compose 蓝绿部署

通过您的项目及其唯一的 Dockerfile(“samples”文件夹中的 docker-compose.yml 被忽略),Docker-Blue-Green-Runner 将使用 Consul 处理持续部署(CD)过程的其余部分。Nginx 允许您在不停机的情况下部署您的项目。


要求

  • 主要在 WSL2 和 Ubuntu 22.04.3 LTS、Docker (24.0)、Docker-Compose (2.18) 上测试
  • 如果你在Win上使用WSL2,我建议你将项目克隆到WSL区域(\\wsl$\Ubuntu\home),而不是C:\。
  • 容器中没有容器
  • 不要在 CircleCI 等容器中使用 Docker-Blue-Green-Runner。这些构建者在自己的容器环境中运行,导致 Docker-Blue-Green-Runner 难以利用卷。这个问题在 CircleCI 有关 "docker-in-docker-not-mounting-volumes "的讨论中得到了强调。Docker 化的 Jenkins 也是如此
  • 应用程序中的镜像或 Dockerfile 必须包含 "bash "和 "curl
  • 不要同时使用本地和真实(没有理由这样做,但以防万一......)

github点击标题