使用 TFS 将 docker 个映像部署到 AWS ECR

Deploy docker image with TFS to AWS ECR

我正在使用 TFS 构建 docker 图像。构建映像后,我想将其推送到 Amazon EC2 Container Registry (ECR)。

实现此目标的最佳方法是什么?

有一个 extension for TFS 例如将数据上传到 AWS S3 或 运行 AWS CLI 命令。使用 CLI,我可以 运行 aws ecr get-login --no-include-email --region xxx 然后手动推送图像。由于我们的构建服务器是 linux 机器并且 "AWS Tools for Windows PowerShell Script" 运行 仅在 Windows 上它也不起作用。

我会避免扩展,只是弄清楚如何让 TFS 在成功构建后触发 shell 脚本。 (我不知道如何完成等式的一半,但我知道如何完成其​​余部分)。

您可以下载 AWS CLI for Unix,它会为您提供此命令。然后 docker login $(aws ecr get-login --no-include-email --region xxx) 如您所见,docker push 您的图像到您创建的 ECR。

我见过的最佳做法是将这样的小 "build scripts" 保存在与您的代码相同的存储库中,例如 build-scripts 文件夹或其他内容。然后 "hard part" 只是将 TFS 连接到 运行 成功的脚本,这就是所有需要知道的。

问题中的TFS extension mentioned现在支持推送镜像到ECR。 (版本 1.0.14)

现在有 "AWS Elastic Container Registry Push" 任务