云原生容器Clouder认证:基于容器搭建企业级应用—课时6:发布容器镜像

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: 云原生容器Clouder认证:基于容器搭建企业级应用—课时6:发布容器镜像

思考:构建好的容器镜像如何存放?

构建好公司网站的WordPress镜像,接下来镜像要放哪儿呢?小陈再次请教大刘。

小陈:师傅,公司网站的镜像已经构建完成,镜像放哪儿好呢?

大刘:镜像应该放在镜像的家里——镜像仓库。制作好的镜像推送到镜像仓库中,这个动作就是镜像发布。考考你,为什么要发布镜像?

小陈:我想想……嗯……镜像发布就宣告这个镜像是可部署的正式版本,可以作为后期生产环境的部署、更新的应用的基准。是吗?

大刘:是这个意思。那为什么要发布到镜像仓库,而不是保存在自己的服务器上呢?

小陈:在一个协同项目中有开发、测试、运维等多个角色,每个角色还不止一个人,需要让团队成员能够在应用构建到发布的不同阶段形成良好协作,就需要大家都能访问的镜像仓库作为协作平台,是这样吧?

大刘:没错。镜像仓库有公共镜像仓库和私有镜像仓库两种。前者最知名的有github,后者有自建的,也有云厂商提供的。你觉得用哪种,对我们更合适呢?

小陈:我认为应该用私有镜像仓库吧。因为我们公司网站中有些素材,关联到我们的企业品牌形象和数据信息,比较重要,以及我们二次开发的代码会涉及用户、支付等比较敏感的数据,还是放在“自己家”更放心。

大刘:赞同。

小陈:我们的私有镜像仓库有必要自建吗?

大刘:没必要。一来我们的工作重心还是要聚焦在核心业务上,没必要分心;二来PaaS化的镜像仓库服务在可靠性、安全性、易用性与云产品的集成度上都很好,价格还不贵。所以直接用云厂商提供的即可,比如阿里云(Aliyun.com)上就提供了很方便的镜像服务ACR,你可以试试。

小陈:好的,明白了。


企业级的应用镜像,建议优先使用阿里云(Aliyun.com)提供的容器镜像服务,其在易用性、安全性和可集成性三方面都存在优势。

  • 易用性:无需自行搭建及运维,一键创建镜像仓库。支持多地域,提供稳定快速的镜像上传、下载服务。
  • 安全可控:完善的镜像权限管理体系,确保镜像的分享安全,团队的协作便利。提供镜像安全扫描功能,保证镜像漏洞可识别,漏洞级别可提示。
  • 云产品间无缝集成:整合容器服务,实现新应用镜像生成后的持续部署。整合云 Code、CodePipeline,实现源代码到编译测试后,自动生成应用镜像。

 

对于开发者而言,还有一项用户福利:满足以下条件的阿里云用户,可以通过阿里云试用中心免费领取容器镜像服务ACR(个人版)

1. 阿里云注册会员用户并完成阿里云个人认证用户。

2. ACR个人版面向个人开发者,限额免费使用(具体标准请见产品控制台)。

3. ACR个人版适用于开发者学习场景,不承诺SLA保障;企业用户可以购买ACR EE(企业版)以获得完整服务。

提示:具体领用规则以试用中心页面的《试用规则》说明为准。

您可以访问阿里云免费试用页面:https://free.aliyun.com/

  • 单击页面右上方的登录/注册按钮,并根据页面提示完成账号登录(已有阿里云账号)、账号注册(尚无阿里云账号)或实名认证(根据试用产品要求完成个人实名认证或企业实名认证)。
  • 成功登录后,在产品类别下选择 容器 > 容器镜像服务,只要符合试用规则,单击立即试用即可完成领用提示:用户须在领取时确认规格、地域等相关信息,领取成功后将不支持更改。
  • 领取完成后,可以登录ACR管理控制台即可找到并开始体验刚刚申领到的ACR资源。

通过试用中心免费领用阿里云容器镜像服务ACR

接下来简单了解下阿里云ACR容器镜像服务。

 

ACR容器镜像服务

阿里云容器镜像服务(简称 ACR)是面向容器镜像、Helm Chart 等符合 OCI 标准的云原生制品安全托管及高效分发平台

其主要特点包括:

  • 提供云原生资产的安全托管和全生命周期管理。
  • 支持全球同步加速、大规模/大镜像分发加速、多代码源构建加速等多场景下镜像的高效分发。
  • 与阿里云容器服务 ACK 无缝集成,打造云原生应用一站式解决方案。

ACR主要应用场景有:云原生应用交付链,一次应用提交,全球多地域、多场景自动交付。

 

容器镜像服务使用

将容器镜像发布到镜像仓库ACR

ACR的使用非常便捷,主要包含两步:1)创建镜像仓库,2)发布应用镜像。

(以下为使用步骤简介,详细操作步骤和指引会在实验环节中展示和体验)

创建镜像仓库

1、在ACR控制台,创建容器镜像服务ACR的个人版实例(生产环境则需选择安全性更高的企业版实例)。

2、获取镜像仓库的登录名。

3、设置镜像仓库的登录密码(Registry登录密码)。

4、创建命名空间(如:wordpress-ns)。

5、创建镜像仓库,在仓库信息中选择上一步创建的命名空间,仓库名称为wordpress,仓库类型选择私有,代码源选择本地仓库,完成创建。

6、配置访问控制。

 

发布应用镜像

1、用ACR的wordpress镜像仓库的登录连接,通过docker login命令登录ACR;


# 登陆个人镜像仓库ACR(实际操作过程使用镜像仓库基本信息界面中相关命令,以下仅为示例)
docker login --username=xxxx registry-vpc.cn-hangzhou.aliyuncs.com


大刘:考考你,在ACR镜像仓库的基本信息页面上,分别提供了访问仓库的公网地址和专有网络地址,这两者你怎么选择?

小陈:我想想,我们已经把Docker容器部署在云服务器ECS上,并且和ACR镜像仓库位于同一区域,那么应该可以用使用专网地址来进行仓库登录、镜像推送等操作,这样速度会比较快吧?

大刘:是的没错,但需要注意的是,如果使用本地的Docker开发环境,就要通过公网地址来访问ACR镜像仓库。

小陈:好嘞,谢谢师傅提醒。

2、通过docker tag命令给WordPress镜像打标签。


# 新增ACR镜像TAG,注意镜像名称为创建的个人仓库镜像ACR中的仓库地址和名称
docker tag wordpress:v1 registry-vpc.cn-hangzhou.aliyuncs.com/wordpress-xxx/wordpress:v1


3、通过docker push命令推送WordPress镜像至wordpress镜像仓库。


# 将镜像推送到镜像仓库ACR
docker push registry-vpc.cn-hangzhou.aliyuncs.com/ wordpress-xxx/wordpress:v1


出现如下回显,证明镜像发布成功

如果发现镜像拉取、推送不成功,往往是地址或者命令行错误导致的,可以检查一下:1)命令行是否写错,尤其是镜像仓库和命名空间的字段是否正确;2)公网地址和专有网络地址是否对应使用正确。其他关于镜像仓库操作的常见问题,可以参考FAQ产品帮助文档:Docker登录、推送和拉取失败常见问题




练习实验:通过ACR快速部署网站应用

https://developer.aliyun.com/adc/scenario/exp/79f68855f1194655bb08e125b59ec104?

 

相关实践学习
通过容器镜像仓库与容器服务快速部署spring-hello应用
本教程主要讲述如何将本地Java代码程序上传并在云端以容器化的构建、传输和运行。
Kubernetes极速入门
Kubernetes(K8S)是Google在2014年发布的一个开源项目,用于自动化容器化应用程序的部署、扩展和管理。Kubernetes通常结合docker容器工作,并且整合多个运行着docker容器的主机集群。 本课程从Kubernetes的简介、功能、架构,集群的概念、工具及部署等各个方面进行了详细的讲解及展示,通过对本课程的学习,可以对Kubernetes有一个较为全面的认识,并初步掌握Kubernetes相关的安装部署及使用技巧。本课程由黑马程序员提供。   相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
22天前
|
运维 Cloud Native 持续交付
深入理解云原生架构及其在现代企业中的应用
随着数字化转型的浪潮席卷全球,企业正面临着前所未有的挑战与机遇。云计算技术的迅猛发展,特别是云原生架构的兴起,正在重塑企业的IT基础设施和软件开发模式。本文将深入探讨云原生的核心概念、关键技术以及如何在企业中实施云原生策略,以实现更高效的资源利用和更快的市场响应速度。通过分析云原生架构的优势和面临的挑战,我们将揭示它如何助力企业在激烈的市场竞争中保持领先地位。
|
23天前
|
运维 Cloud Native 安全
云原生技术在现代企业中的应用与挑战####
本文探讨了云原生技术在现代企业IT架构中的关键作用,分析了其带来的优势和面临的主要挑战。通过实际案例分析,揭示了如何有效应对这些挑战,以实现业务敏捷性和技术创新的平衡。 ####
|
20天前
|
Kubernetes Cloud Native 微服务
探索云原生技术:容器化与微服务架构的融合之旅
本文将带领读者深入了解云原生技术的核心概念,特别是容器化和微服务架构如何相辅相成,共同构建现代软件系统。我们将通过实际代码示例,探讨如何在云平台上部署和管理微服务,以及如何使用容器编排工具来自动化这一过程。文章旨在为开发者和技术决策者提供实用的指导,帮助他们在云原生时代中更好地设计、部署和维护应用。
|
20天前
|
Cloud Native 持续交付 开发者
云原生技术在现代企业中的应用与实践####
本文深入探讨了云原生技术的核心概念及其在现代企业IT架构转型中的关键作用,通过具体案例分析展示了云原生如何促进企业的敏捷开发、高效运维及成本优化。不同于传统摘要仅概述内容,本部分旨在激发读者对云原生领域的兴趣,强调其在加速数字化转型过程中的不可或缺性,为后续详细论述奠定基础。 ####
|
3天前
|
存储 Kubernetes 开发者
容器化时代的领航者:Docker 和 Kubernetes 云原生时代的黄金搭档
Docker 是一种开源的应用容器引擎,允许开发者将应用程序及其依赖打包成可移植的镜像,并在任何支持 Docker 的平台上运行。其核心概念包括镜像、容器和仓库。镜像是只读的文件系统,容器是镜像的运行实例,仓库用于存储和分发镜像。Kubernetes(k8s)则是容器集群管理系统,提供自动化部署、扩展和维护等功能,支持服务发现、负载均衡、自动伸缩等特性。两者结合使用,可以实现高效的容器化应用管理和运维。Docker 主要用于单主机上的容器管理,而 Kubernetes 则专注于跨多主机的容器编排与调度。尽管 k8s 逐渐减少了对 Docker 作为容器运行时的支持,但 Doc
28 5
容器化时代的领航者:Docker 和 Kubernetes 云原生时代的黄金搭档
|
15天前
|
人工智能 缓存 异构计算
云原生AI加速生成式人工智能应用的部署构建
本文探讨了云原生技术背景下,尤其是Kubernetes和容器技术的发展,对模型推理服务带来的挑战与优化策略。文中详细介绍了Knative的弹性扩展机制,包括HPA和CronHPA,以及针对传统弹性扩展“滞后”问题提出的AHPA(高级弹性预测)。此外,文章重点介绍了Fluid项目,它通过分布式缓存优化了模型加载的I/O操作,显著缩短了推理服务的冷启动时间,特别是在处理大规模并发请求时表现出色。通过实际案例,展示了Fluid在vLLM和Qwen模型推理中的应用效果,证明了其在提高模型推理效率和响应速度方面的优势。
云原生AI加速生成式人工智能应用的部署构建
|
15天前
|
供应链 安全 Cloud Native
阿里云容器服务助力企业构建云原生软件供应链安全
本文基于2024云栖大会演讲,探讨了软件供应链攻击的快速增长趋势及对企业安全的挑战。文中介绍了如何利用阿里云容器服务ACK、ACR和ASM构建云原生软件供应链安全,涵盖容器镜像的可信生产、管理和分发,以及服务网格ASM实现应用无感的零信任安全,确保企业在软件开发和部署过程中的安全性。
|
15天前
|
人工智能 Kubernetes Cloud Native
阿里云容器服务,智算时代云原生操作系统
2024云栖大会,阿里巴巴研究员易立分享了阿里云容器服务的最新进展。容器技术已成为云原生操作系统的基石,支持多样化的应用场景,如自动驾驶、AI训练等。阿里云容器服务覆盖公共云、边缘云、IDC,提供统一的基础设施,助力客户实现数字化转型和技术创新。今年,阿里云在弹性计算、网络优化、存储解决方案等方面进行了多项重要升级,进一步提升了性能和可靠性。
|
20天前
|
Cloud Native JavaScript Docker
云原生技术:构建现代应用的基石
在数字化转型的浪潮中,云原生技术如同一艘承载梦想的航船,引领企业驶向创新与效率的新海域。本文将深入探索云原生技术的核心价值,揭示其如何重塑软件开发、部署和运维模式,同时通过一个简易代码示例,展现云原生应用的构建过程,让读者领略到云原生技术的魅力所在。
|
21天前
|
Kubernetes Cloud Native Docker
云原生之旅:从容器化到微服务
本文将带领读者踏上云原生的旅程,深入探讨容器化和微服务架构的概念、优势以及它们如何共同推动现代软件的发展。我们将通过实际代码示例,展示如何在Kubernetes集群上部署一个简单的微服务应用,并解释相关的配置和操作。无论你是云原生新手还是希望深化理解,这篇文章都将为你提供有价值的见解和实操指南。

相关产品

  • 容器镜像服务