云原生之容器编排实践-阿里云私有容器镜像仓库

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
容器服务 Serverless 版 ACK Serverless,952元额度 多规格
容器服务 Serverless 版 ACK Serverless,317元额度 多规格
简介: 云原生之容器编排实践-阿里云私有容器镜像仓库

LS(N@W8O66BLX4EDTM8HP9S.png

携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第7天,点击查看活动详情


背景


前面我们已经通过 IDEADocker 插件连接到了 Docker 服务,并借助 DockerfileMaven 打包插件实现一键部署 Spring Boot 应用到远程 Docker 容器。但是这里的镜像都存储在本地( Docker 所在的主机),这样在实际的协同开发时不方便共享,所以可以采用各大云服务商提供的私有容器镜像仓库服务,或者自建私有仓库。这里使用阿里云提供的私有容器镜像仓库进行实践。


阿里云私有容器镜像仓库


  • 阿里云搜索容器镜像服务

直接在阿里云搜索容器镜像服务即可。


4K@WM7USWK3QZWD}O]@L2HD.png

  • 创建个人实例

作为实验测试,使用个人实例即可,如果实际生产需要,可选择企业实例。


V50T)899~641(1%~WQ9L8C3.png

远程登录并上传镜像


命令行登录阿里云私有容器镜像仓库后,对指定的镜像打Tag,然后推送到远程镜像仓库。


# 先看下本地镜像列表
[root@k8s0 ~]# docker images
REPOSITORY                                                    TAG              IMAGE ID       CREATED         SIZE
heartsuit/cloud-native                                        latest           eb03480c1351   3 days ago      122MB
heartsuit/cloud-native                                        0.0.1-SNAPSHOT   e0f7dde1261a   4 days ago      122MB
kicbase/stable                                                v0.0.32          ff7b11088f07   2 months ago    1.15GB
hello-world                                                   latest           feb5d9fea6a5   11 months ago   13.3kB
openjdk                                                       8-jdk-alpine     a3562aa0b991   3 years ago     105MB
bash


# 输入账号与密码登录
[root@k8s0 ~]# docker login --username=heartsuit registry.cn-hangzhou.aliyuncs.com
Password: 
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store
Login Succeeded
# 打Tag
[root@k8s0 ~]# docker tag e0f7dde1261a registry.cn-hangzhou.aliyuncs.com/container-repo/docker-hub:0.0.1-SNAPSHOT
# Push到远程仓库
[root@k8s0 ~]# docker push registry.cn-hangzhou.aliyuncs.com/container-repo/docker-hub:0.0.1-SNAPSHOT
The push refers to repository [registry.cn-hangzhou.aliyuncs.com/container-repo/docker-hub]
8fae554c8835: Pushed 
ceaf9e1ebef5: Pushed 
9b9b7f3d56a0: Pushed 
f1b5933fe4b5: Pushed 
0.0.1-SNAPSHOT: digest: sha256:aa901df7e77dce21461b28d3c4c46241cdc3e0247631541b29eee551f3ee529b size: 1159
# 再次看下本地镜像列表
[root@k8s0 ~]# docker images
REPOSITORY                                                    TAG              IMAGE ID       CREATED         SIZE
heartsuit/cloud-native                                        latest           eb03480c1351   3 days ago      122MB
registry.cn-hangzhou.aliyuncs.com/container-repo/docker-hub   0.0.1-SNAPSHOT   eb03480c1351   3 days ago      122MB
heartsuit/cloud-native                                        0.0.1-SNAPSHOT   e0f7dde1261a   4 days ago      122MB
kicbase/stable                                                v0.0.32          ff7b11088f07   2 months ago    1.15GB
hello-world                                                   latest           feb5d9fea6a5   11 months ago   13.3kB
openjdk                                                       8-jdk-alpine     a3562aa0b991   3 years ago     105MB
远程镜像仓库


AS]T3HJIA46YEN19`%7123K.png


之后,就可以将自己 Build 好的镜像进行共享了。


小总结


以上是使用阿里云提供的私有容器镜像仓库托管服务的具体实践,其实,其他云服务提供商提供的此类服务的用法基本一致,eg: 腾讯云,因为都是参考的 Docker官方的镜像仓库来实现的。当然如果网络环境(主要是上传和拉取镜像的速度)具备条件,可直接使用 Docker 官方提供的镜像库。

有了私有的容器镜像仓库,当在 minikube 或者 Kubernetes 中拉取私有容器镜像仓库的镜像时,并不能直接拉取,还需要进行认证信息配置,这在后续文章中会专门介绍到。


Reference



If you have any questions or any bugs are found, please feel free to contact me.

Your comments and suggestions are welcome!

相关实践学习
通过容器镜像仓库与容器服务快速部署spring-hello应用
本教程主要讲述如何将本地Java代码程序上传并在云端以容器化的构建、传输和运行。
Kubernetes极速入门
Kubernetes(K8S)是Google在2014年发布的一个开源项目,用于自动化容器化应用程序的部署、扩展和管理。Kubernetes通常结合docker容器工作,并且整合多个运行着docker容器的主机集群。 本课程从Kubernetes的简介、功能、架构,集群的概念、工具及部署等各个方面进行了详细的讲解及展示,通过对本课程的学习,可以对Kubernetes有一个较为全面的认识,并初步掌握Kubernetes相关的安装部署及使用技巧。本课程由黑马程序员提供。   相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
目录
相关文章
|
6天前
|
Kubernetes Cloud Native Docker
云原生时代的容器化实践:Docker和Kubernetes入门
【10月更文挑战第37天】在数字化转型的浪潮中,云原生技术成为企业提升敏捷性和效率的关键。本篇文章将引导读者了解如何利用Docker进行容器化打包及部署,以及Kubernetes集群管理的基础操作,帮助初学者快速入门云原生的世界。通过实际案例分析,我们将深入探讨这些技术在现代IT架构中的应用与影响。
28 2
|
4天前
|
运维 Cloud Native 虚拟化
一文吃透云原生 Docker 容器,建议收藏!
本文深入解析云原生Docker容器技术,涵盖容器与Docker的概念、优势、架构设计及应用场景等,建议收藏。关注【mikechen的互联网架构】,10年+BAT架构经验倾囊相授。
一文吃透云原生 Docker 容器,建议收藏!
|
6天前
|
运维 Kubernetes Cloud Native
云原生技术:容器化与微服务架构的完美结合
【10月更文挑战第37天】在数字化转型的浪潮中,云原生技术以其灵活性和高效性成为企业的新宠。本文将深入探讨云原生的核心概念,包括容器化技术和微服务架构,以及它们如何共同推动现代应用的发展。我们将通过实际代码示例,展示如何在Kubernetes集群上部署一个简单的微服务,揭示云原生技术的强大能力和未来潜力。
|
4天前
|
Cloud Native API 持续交付
云原生之旅:从容器到微服务的演进之路
【10月更文挑战第39天】在这篇文章中,我们将一起探索云原生技术的奥秘。通过浅显易懂的语言和生动的比喻,我们将了解云原生技术如何改变软件开发的世界。文章将带领读者从容器的基本概念出发,逐步深入到微服务架构的实践,揭示这些技术如何助力现代应用的快速迭代与可靠部署。准备好,让我们启程进入云原生的精彩世界吧!
|
7天前
|
Kubernetes Cloud Native Docker
云原生技术探索:容器化与微服务的实践之道
【10月更文挑战第36天】在云计算的浪潮中,云原生技术以其高效、灵活和可靠的特性成为企业数字化转型的重要推手。本文将深入探讨云原生的两大核心概念——容器化与微服务架构,并通过实际代码示例,揭示如何通过Docker和Kubernetes实现服务的快速部署和管理。我们将从基础概念入手,逐步引导读者理解并实践云原生技术,最终掌握如何构建和维护一个高效、可扩展的云原生应用。
|
14天前
|
Kubernetes Cloud Native 微服务
云原生之旅:从容器到微服务
【10月更文挑战第29天】在这篇文章中,我们将一起探索云原生的奥秘。云原生不仅仅是一种技术,更是一种文化和方法论。我们将从容器技术开始,逐步深入到微服务架构,最后探讨如何在云平台上实现高效的服务部署和管理。无论你是初学者还是有经验的开发者,这篇文章都将为你提供有价值的见解和实用的技能。让我们一起踏上这段激动人心的云原生之旅吧!
|
15天前
|
Cloud Native 持续交付 云计算
云原生入门指南:从容器到微服务
【10月更文挑战第28天】在数字化转型的浪潮中,云原生技术成为推动现代软件开发的关键力量。本篇文章将带你了解云原生的基本概念,探索它如何通过容器化、微服务架构以及持续集成和持续部署(CI/CD)的实践来提升应用的可伸缩性、灵活性和可靠性。你将学习到如何利用这些技术构建和部署在云端高效运行的应用,并理解它们对DevOps文化的贡献。
37 2
|
4天前
|
Cloud Native 安全 数据安全/隐私保护
云原生架构下的微服务治理与挑战####
随着云计算技术的飞速发展,云原生架构以其高效、灵活、可扩展的特性成为现代企业IT架构的首选。本文聚焦于云原生环境下的微服务治理问题,探讨其在促进业务敏捷性的同时所面临的挑战及应对策略。通过分析微服务拆分、服务间通信、故障隔离与恢复等关键环节,本文旨在为读者提供一个关于如何在云原生环境中有效实施微服务治理的全面视角,助力企业在数字化转型的道路上稳健前行。 ####
|
7天前
|
消息中间件 存储 Cloud Native
云原生架构下的数据一致性挑战与应对策略####
本文探讨了在云原生环境中,面对微服务架构的广泛应用,数据一致性问题成为系统设计的核心挑战之一。通过分析云原生环境的特点,阐述了数据不一致性的常见场景及其对业务的影响,并深入讨论了解决这些问题的策略,包括采用分布式事务、事件驱动架构、补偿机制以及利用云平台提供的托管服务等。文章旨在为开发者提供一套系统性的解决方案框架,以应对在动态、分布式的云原生应用中保持数据一致性的复杂性。 ####
|
4天前
|
Cloud Native 安全 API
云原生架构下的微服务治理策略与实践####
—透过云原生的棱镜,探索微服务架构下的挑战与应对之道 本文旨在探讨云原生环境下,微服务架构所面临的关键挑战及有效的治理策略。随着云计算技术的深入发展,越来越多的企业选择采用云原生架构来构建和部署其应用程序,以期获得更高的灵活性、可扩展性和效率。然而,微服务架构的复杂性也带来了服务发现、负载均衡、故障恢复等一系列治理难题。本文将深入分析这些问题,并提出一套基于云原生技术栈的微服务治理框架,包括服务网格的应用、API网关的集成、以及动态配置管理等关键方面,旨在为企业实现高效、稳定的微服务架构提供参考路径。 ####
24 5