带你读《企业级云原生白皮书项目实战》——3.2.1 ACR容器镜像服务(4)

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: 带你读《企业级云原生白皮书项目实战》——3.2.1 ACR容器镜像服务(4)

《企业级云原生白皮书项目实战》——第三章 容器——3.2 业务部署——3.2.1 ACR容器镜像服务(3) https://developer.aliyun.com/article/1229390?groupCode=supportservice


docker login 登陆Tips

•阿里云的账户名是中文的能登陆吗?

亲测可以登陆,登录失败除了排查下面的原因,还要排查用户使用的远程访问的客户端编码。

•用户没有填写登陆域名,这样用户登陆的是Docker Hub,没有使用阿里云容器镜像服务

•docker login

Username: docker

Password:

Email: docker@gmail.com

Error response from daemon: Wrong login/password, please try again

•用户使用了sudo,Linux提示输入的是sudo的密码。特点是sudo的密码错误会重新尝试三次。

•sudo docker login registry.cn-hangzhou.aliyuncs.com

[sudo] password for hyzhou: Sorry, try again.

[sudo] password for hyzhou: Sorry, try again.

[sudo] password for hyzhou: Sorry, try again.

sudo: 3 incorrect password attempts

•用户密码使用错误,登陆Registry的密码是容器镜像服务控制台独立设置的。不是阿里云账户的登陆密码。

Registry的登录密码是在容器镜像服务控制台上设置与修改的

https://help.aliyun.com/document_detail/60761.htm

•子账户登录的情况,确认用户登录名为 <子账户名>@<企业别名> 进行登录。企业别名未设置时为AliyunUID。

注意企业别名是没有 . 字符的。区分一下企业别名和域别名的概念。

https://help.aliyun.com/document_detail/28628.html

•国际站用户使用国际站用户的服务域名,中国站用户使用中国站用户的服务域名登陆。两套入口账户隔离。

•确认用户有没有在Docker Daemon中设置全局代理。

docker pull/push

•用户拉取的是否是容器镜像服务的镜像。如果不是用户自己检查一下登陆权限等问题

•docker pull notme/asdas:latest Using default tag: latest you are not autho

rized to perform this operation: server returned 401.

•用户拉取的镜像是自己的私有镜像,这时需要先进行登录再拉取。

a. 确认用户镜像的所在地域。在A地域的镜像只能使用A地域的服务域名拉取。例如杭州的镜像不能使用 registry.cn-beijing.aliyuncs.com 拉取。

b. 确认用户是否登录Registry。使用 cat ~/.docker/confifig.json 可以看到用户登陆的所有域名列表。

c. 查看里面是否包含您想要下载镜像的Registry域名。如果没有的话,需要先进行登录操作。

如果显示已经登录的话,那么您需要确认您登录的这个账户是否有权限下载这个镜像。子账户默认没有任何权限。关于仓库的访问控制授权,请参见仓库访问控制。

•镜像拉取ImageId不能保持一致用户Docker版本低于1.12时,ImageID和宿主机环境有关,导致其在各个机器上不一致。

•公有仓库数量、私有仓库数量已经到达仓库上线时,会报错不允许上传。

免密组件

aliyun-acr-credential-helper是一个可以在ACK集群中免密拉取ACR个人版或企业版私有镜像的组件。它是通过读取ACK集群内的kube-system命名空间中的acr-confifiguration的配置,进行私有镜像拉取。

表:免密组件confifigmap配置说明

1685013551075.png

image.png

图:confifigmap配置示例

image.png

图:免密组件日志

•在Kubernetes资源(例如无状态应用Deployment)模板中配置拉取凭证(imagePullSecret)会导致免密组件失效,如果需使用免密组件,请避免手工配置拉取凭证(imagePullSecret)。

•如果部署的Kubernetes资源(例如无状态应用Deployment)使用了自定义的ServiceAccount,需先调整免密组件配置文件中Service-Account字段,使其作用于自定义的ServiceAccount,再进行部署资源操作。

•确认Kubernetes集群所属地域与要拉取的镜像所在的地域是否一致,默认配置只可以拉取本地域的镜像。如果需要跨地域拉取镜像,请参考下面的配置。(仅适用于公网拉取)

image.png

图:跨地域配置示例


《企业级云原生白皮书项目实战》——第三章 容器——3.2 业务部署——3.2.1 ACR容器镜像服务(5) https://developer.aliyun.com/article/1229385?groupCode=supportservice

相关实践学习
通过ACR快速部署网站应用
本次实验任务是在云上基于ECS部署Docker环境,制作网站镜像并上传至ACR镜像仓库,通过容器镜像运行网站应用,网站运行在Docker容器中、网站业务数据存储在Mariadb数据库中、网站文件数据存储在服务器ECS云盘中,通过公网地址进行访问。
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。 &nbsp; &nbsp; 相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
人工智能 PyTorch 算法框架/工具
AI 容器镜像部署 Stable Diffusion
本文将基于阿里云 AMD 服务器和龙蜥 AI 容器服务,快速搭建出个人版文生图服务
|
人工智能 PyTorch 算法框架/工具
AI 容器镜像部署 Qwen-VL-Chat
本文将基于阿里云 AMD 服务器和龙蜥 AI 容器服务,快速搭建出个人版视觉 AI 助手服务
|
安全 应用服务中间件 数据安全/隐私保护
企业实战(5) Docker私有镜像仓库Harbor的部署与使用详解
企业实战(5) Docker私有镜像仓库Harbor的部署与使用详解
618 0
|
存储 运维 数据安全/隐私保护
如何高效利用阿里云Docker镜像仓库管理您的容器镜像
如何高效利用阿里云Docker镜像仓库管理您的容器镜像
|
运维 安全 Cloud Native
"揭秘!Trivy——云原生时代的隐形安全侠,一键扫描,让容器镜像漏洞无所遁形,守护你的云端帝国坚不可摧!"
【8月更文挑战第14天】在云原生时代,容器技术如Docker与Kubernetes大放异彩,加速了应用部署。但容器化的普及也带来了安全挑战,尤其是镜像的安全性至关重要。Trivy,一款高效且轻量级的镜像安全扫描工具应运而生,成为开发者与运维人员的得力助手。它由Aqua Security开发,支持一键式全面扫描,能快速检测镜像中的漏洞与配置风险,并提供修复建议。Trivy采用Go语言编写,轻巧高效,支持多平台,并可轻松集成到CI/CD流程中,确保只有安全的镜像才能部署到生产环境。无论新手还是专家,Trivy都是构建安全可靠云环境的理想选择。
256 2
|
Kubernetes jenkins Devops
基于Jenkins和k8s构建企业级DevOps容器云平台
基于Jenkins和k8s构建企业级DevOps容器云平台
|
Kubernetes Cloud Native 微服务
企业级容器部署实战:基于ACK与ALB灵活构建云原生应用架构
这篇内容概述了云原生架构的优势,特别是通过阿里云容器服务Kubernetes版(ACK)和应用负载均衡器(ALB)实现的解决方案。它强调了ACK相对于自建Kubernetes的便利性,包括优化的云服务集成、自动化管理和更强的生态系统支持。文章提供了部署云原生应用的步骤,包括一键部署和手动部署的流程,并指出手动部署更适合有技术背景的用户。作者建议在预算允许的情况下使用ACK,因为它能提供高效、便捷的管理体验。同时,文章也提出了对文档改进的建议,如添加更多技术细节和解释,以帮助用户更好地理解和实施解决方案。最后,展望了ACK未来在智能化、安全性与边缘计算等方面的潜在发展。水文一篇,太忙了,见谅!
|
API Docker 容器
容器镜像解析问题之使用go-containerregistry在代码中解析容器镜像如何解决
容器镜像解析问题之使用go-containerregistry在代码中解析容器镜像如何解决
159 0
|
Dragonfly Docker 容器
实时数仓Hologres容器镜像问题之优化私有化部署如何解决
容器镜像常遇问题包括:将过多组件打包至单一容器、使用systemd导致状态不一致、私有部署中传输未优化的镜像包及基础镜像频繁下发致网络拥堵。应采用轻量化基础镜像,明确镜像版本,并利用镜像层复用来优化。[了解更多](https://developer.aliyun.com/ask/666077)。 避免容器臃肿的方法是选用精简基础镜像,固定镜像版本,并通过镜像层复用来减少重复内容,实现高效部署。[查看详情](https://developer.aliyun.com/ask/666078)。
182 0
|
存储 弹性计算 Kubernetes
【阿里云云原生专栏】深入解析阿里云Kubernetes服务ACK:企业级容器编排实战
【5月更文挑战第20天】阿里云ACK是高性能的Kubernetes服务,基于开源Kubernetes并融合VPC、SLB等云资源。它提供强大的集群管理、无缝兼容Kubernetes API、弹性伸缩、安全隔离及监控日志功能。用户可通过控制台或kubectl轻松创建和部署应用,如Nginx。此外,ACK支持自动扩缩容、服务发现、负载均衡和持久化存储。多重安全保障和集成监控使其成为企业云原生环境的理想选择。
766 3