使用 CLI 在 AWS 中构建 docker 图像
building a docker image in AWS with CLI
我之前使用 gcloud
并且可以在 GCP 机器上构建一个 docker 图像,如下所示:
gcloud builds submit ./my-docker-dir/ -t eu.gcr.io/<path>/<component>:<tag> --timeout 30m --machine-type e2-highcpu-32\n
是否有类似的 AWS 等效项?
不,没有这样的选择。使用 AWS,您可以使用 docker
到 build
& push
到 ECR。
示例工作流程为:
- 创建一个
docker
文件并使用以下命令构建它:
docker build -t hello-world .
- 向您打算将图像推送到的 Amazon ECR 注册表验证您的 Docker 客户端。
aws ecr get-login-password --region region | docker login --username AWS --password-stdin aws_account_id.dkr.ecr.region.amazonaws.com
- 创建 ECR 存储库
aws ecr create-repository \
--repository-name hello-world \
--image-scanning-configuration scanOnPush=true \
--region region
- 标记您构建的 docker 图像。
docker tag hello-world:latest aws_account_id.dkr.ecr.region.amazonaws.com/hello-world:latest
- 将其推送到您的 ECR 存储库。
docker push aws_account_id.dkr.ecr.region.amazonaws.com/hello-world:latest
我之前使用 gcloud
并且可以在 GCP 机器上构建一个 docker 图像,如下所示:
gcloud builds submit ./my-docker-dir/ -t eu.gcr.io/<path>/<component>:<tag> --timeout 30m --machine-type e2-highcpu-32\n
是否有类似的 AWS 等效项?
不,没有这样的选择。使用 AWS,您可以使用 docker
到 build
& push
到 ECR。
示例工作流程为:
- 创建一个
docker
文件并使用以下命令构建它:
docker build -t hello-world .
- 向您打算将图像推送到的 Amazon ECR 注册表验证您的 Docker 客户端。
aws ecr get-login-password --region region | docker login --username AWS --password-stdin aws_account_id.dkr.ecr.region.amazonaws.com
- 创建 ECR 存储库
aws ecr create-repository \
--repository-name hello-world \
--image-scanning-configuration scanOnPush=true \
--region region
- 标记您构建的 docker 图像。
docker tag hello-world:latest aws_account_id.dkr.ecr.region.amazonaws.com/hello-world:latest
- 将其推送到您的 ECR 存储库。
docker push aws_account_id.dkr.ecr.region.amazonaws.com/hello-world:latest