古之立大事者,不惟有超世之才,亦必有坚忍不拔之志。这篇文章主要讲述AWS私有仓库ECR推送拉取镜像相关的知识,希望能为你提供帮助。
作者:??SRE运维博客](https://www.cnsre.cn/ )??什么是 Amazon Elastic Container Registry(ECR)?Amazon Elastic Container Registry (Amazon ECR) 是 Amazon 托管容器映像注册表服务,它安全、可扩展且可靠。Amazon ECR 支持私有存储库,其具有使用 Amazon IAM 的基于资源的权限。这样,指定用户或 Amazon EC2 实例可以访问您的容器存储库和映像。您可以使用首选 CLI 推送、提取和管理 Docker 映像、Open Container Itistry (OCI) 映像和 OCI 兼容构件。
??博客地址: [https://www.cnsre.cn/](https://www.cnsre.cn/ ) ??
??文章地址:[https://www.cnsre.cn/posts/211206944174/??
相关话题:??https://www.cnsre.cn/tags/aws/??
Amazon ECR 的功能Amazon ECR 提供以下功能:
- 生命周期策略有助于管理存储库中映像的生命周期。您可以定义导致清理未使用映像的规则。您可以在将规则应用到存储库之前对其进行测试。有关更多信息,请参阅 ??生命周期策略??。
- 映像扫描有助于识别容器映像中的软件漏洞。每个存储库都可以配置为在推送时扫描。这可确保扫描推送到存储库的每个新映像。然后,您可以检索映像扫描的结果。有关更多信息,请参阅 ??映像扫描??。
- 跨区域和跨账户复制使您可以更轻松地将映像放置在需要的位置。它配置为注册表设置,并基于每个区域。有关更多信息,请参阅 ??私有注册表设置??。
在推送映像之前,Amazon ECR 存储库必须存在。
【AWS私有仓库ECR推送拉取镜像】向要向其推送映像的 Amazon ECR 注册表验证 Docker 客户端的身份。必须针对每个注册表获得授权令牌,令牌有效期为 12 小时。要对 Amazon ECR 注册表验证 Docker,请运行 aws ecr get-login-password 命令。将身份验证令牌传递给 docker login 命令时,将值 ?
?AWS?
?? 用作用户名,并指定要对其进行身份验证的 Amazon ECR 注册表 URI。如果对多个注册表进行身份验证,则必须针对每个注册表重复该命令。{{<
notice info "注意" >
}}如果收到错误,请安装或更新到最新版本的 Amazon CLI。有关更多信息,请参阅 *Amazon Command Line Interface 用户指南*中的??安装 Amazon Command Line Interface??。 {{<
/notice >
}}检索身份验证令牌并向注册表验证 Docker 客户端身份。
使用 亚马逊云科技 CLI:
aws ecr get-login-password --region cn-north-1 | docker login --username AWS --password-stdin 12345678.dkr.ecr.cn-north-1.amazonaws.com.c
{{< notice info "注意: " > }}如果您在使用 亚马逊云科技 CLI 时遇到错误,请确保您已安装最新版本的 亚马逊云科技 CLI 和 Docker。 {{< /notice > }}
构建 Docker 映像
如果您已生成映像,则可跳过此步骤:
docker build -t cnsre-test
标记映像
生成完成后,标记您的映像,以便将映像推送到此存储库:
docker tag cnsre-test:latest 12345678.dkr.ecr.cn-north-1.amazonaws.com.cn/cnsre-test:lates
推送镜像
运行以下命令将此映像推送到新创建的 亚马逊云科技 存储库:
docker push 12345678.dkr.ecr.cn-north-1.amazonaws.com.cn/cnsre-test:lates
{{< notice info "注意" > }}出现 ?
?Head https://registry-1.docker.io/v2/library/node/manifests/14-alpine ?
?的解决方法 {{<
/notice >
}}vim /etc/docker/daemon.json
# 添加国内的镜像 阿里云镜像
{ "registry-mirrors":["https://6kx4zyno.mirror.aliyuncs.com"] }
# 或者中科院镜像
"registry-mirrors":["https://docker.mirrors.ustc.edu.cn"]
重启Docker
systemctl daemon-reload
systemctl restart docke
拉取镜像使用 docker pull 命令提取映像。映像名称格式应为 ?
?registry/repository[:tag]?
?? 以便按标签拉取,或为 ??registry/repository[@digest]?
? 以便按摘要拉取。docker pull 12345678.dkr.ecr.cn-north-1.amazonaws.com.cn/cnsre-test:lates
{{< notice info "注意" > }}如果您收到 ?
?repository-url not found: does not exist or no pull access?
?? 错误,您可能需要向 Amazon ECR 验证您的 Docker 客户端。有关更多信息,请参阅 ??私有注册表身份验证??。 {{<
/notice >
}}- - -
作者:??SRE运维博客??
博客地址: ??https://www.cnsre.cn/??
文章地址:??https://www.cnsre.cn/posts/211206944174/??
相关话题:??https://www.cnsre.cn/tags/aws/??
- - -
推荐阅读
- 存储数据恢复案例误操作删除lun-Netapp的数据恢复
- 灯箱无法在我的WordPress主题中运作
- 启动没有wordpress帐户的wordpress网站()
- 如果同一用户再次登录,则销毁上一个会话
- 提交表单后,请保持选中复选框,自定义帖子类型
- functions.php内部的jQuery脚本不起作用
- 在wordpress网站内使用hubspot表单时,jQuery丢失
- jQuery隐藏按钮,如果文本框为空,则显示,如果文本框具有值
- jQuery代码不适用于WordPress的Div主题[重复]