可靠、稳定、安全,龙蜥云原生容器镜像正式发布!

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: 选择一个好的容器镜像需要考虑哪些方面?

vcg_VCG41N1288562960_RF.jpg

文/云原生 SIG

01 背景

随着云原生的蓬勃发展,越来越多的企业在自己的生产或者测试环境使用云原生技术,而容器镜像正是云原生技术中应用的实际运行环境。一个好的容器运行环境即容器镜像会真正关系到应用的体验、演进和维护。那么选择一个好的容器镜像需要考虑哪些方面呢?具体如下:


1. 长期的支持与维护容器镜像提供的环境是分层的,企业容器应用往往是在一些基础镜像(base image)之上构建自己的应用镜像,而基础镜像提供了应用中所依赖的库、软件包等。对基础镜像上软件包的维护更新、问题修复、新功能支持等,是我们构建一个好的、可靠的、稳定的应用镜像的必要条件。

2. 安全:企业应用的生产往往是开发人员将自己的应用与第三方应用(包括基础容器镜像)通过构建打包成可部署的制品内容,然后应用到生产环境中,这个过程隐藏着两个安全诉求:

  • 需要保证所使用的容器镜像的安全性。
  • 需要保证在整个软件生命周期中,软件包的源头以及制品的完整性、可追溯性证明也就成了安全的关键环节。

3. 性能/最佳实践:当前很多用户使用的容器镜像都仅仅是提供了通用的应用环境,针对各类场景缺少性能优化、缺少最佳实践方案,那么能否为用户提供优化的容器镜像、为场景提供最佳实践的容器镜像方案就成为很多用户考虑的方面。

基于上面的用户诉求,龙蜥云原生容器镜像(Anolis Container Image)应运而生。今天,很高兴地宣布龙蜥云原生容器镜像正式发布,同时也构建了部分镜像提供给社区用户进行下载,包括基础 base 镜像、基础语言镜像、基础应用镜像等(下载使用方法见下文)

02 龙蜥云原生容器镜像

龙蜥云原生容器镜像旨在建设一个持续优化的、长期支持和维护的、安全可靠的容器镜像生态,为广大云原生用户、开发者和伙伴提供一个最佳云原生运行环境:

6.png

社区维护能力。龙蜥社区基于不同 OS 版本都会维护基础软件 RPM 包,以及基础的语言、应用等软件包,可提供丰富的 base 镜像,并且会定期进行维护更新等,这些都保证了基于龙蜥软件包构建出来的容器镜像具有完整的生命周期管理能力。未来在社区会提供下面三类容器镜像能力:

  • Anolis Base Container Image:包括 Anolis 7、Anolis 8、Anolis 23、Alinux 2、Alinux 3 等 (Alinux 即 Alibaba Cloud Linux 的简称,是由阿里云操作系统团队以 Anolis OS 为基础构建的阿里云操作系统发行版。目前阿里云操作系统团队也将其贡献到了龙蜥社区云原生 SIG 的容器镜像生态中)。
  • Language Container Image Base Anolis/Alinux:C++、Java、Python、Nodejs、Go 等。
  • Application Container Image Base Anolis: nginx、postgres、redis、httpd、mongo、mysql 等。

安全保证。社区主要有两方面保证,一是从容器镜像软件包来源上,社区会定期对镜像中软件包进行定期 CVE 修复,保证从源头上解决安全能力;二是从容器镜像完整性上,我们构建过程中会对镜像进行数字签名,这样 Release 的镜像都是带有签名加固,实际下载镜像的用户使用者可以进行验签。而相对于传统的签名方案,我们在云原生场景可以支持更加便捷的 Keyless Signatures 模式,可以更加友好、易用地进行加签和验签。


性能最优。龙蜥社区有丰富的软件方案,其中 KeenTune 提供 AI 算法和专家知识库智能调优,我们在一些应用镜像中默认集成了 KeenTune,可以让业务运行在最优的环境中。


同时龙蜥云原生容器镜像面向开发者与伙伴提供了一站式的开发集成设施,从容器的构建平台到测试平台,再到分发平台等,可以帮助开发者低门槛贡献容器镜像。开发者只需要在社区代码仓库中提交对应镜像的 Dockerfile,社区基础设施可以完成完整的容器构建与测试、分发流程,代码仓库见下:https://gitee.com/anolis/docker-images/

03 当前进展与未来规划

目前我们已经构建了部分的镜像,并可以提供给社区用户进行下载,未来一年我们会提供更多的高频使用容器镜像,同时在下载的镜像中带有安全数字签名,初步路标如下图所示:

7.png

04 如何获取使用

当前我们在社区已经构建出了基础的 Anolis OS base 镜像,以及部分基础语言与应用的镜像,用户可以根据表中列出的地址进行下载和使用,也欢迎大家在社区中提出建议和意见。


直接下载使用

举例如下:

Anolis 的 base 镜像:

docker pull registry.openanolis.cn/openanolis/anolisos:8.6

基础语言镜像:

docker pull registry.openanolis.cn/openanolis/golang:1.19.4-8.6
docker pull registry.openanolis.cn/openanolis/python:3.11.1-8.6

基础应用镜像:

docker pull registry.openanolis.cn/openanolis/mysql:8.0.30-8.6
docker pull registry.openanolis.cn/openanolis/redis:5.0.3-8.6


作为 base 镜像使用


举例如下:

[root]# cat Dockerfile
FROM registry.openanolis.cn/openanolis/anolisos:8.6
RUN touch hello
[root]# docker build -t anolis-test .
Sending build context to Docker daemon  2.048kB
Step 1/2 : FROM registry.openanolis.cn/openanolis/anolisos:8.6
8.6: Pulling from openanolis/anolisos
719018114380: Pull complete
Digest: sha256:9395d241fc1a41a592773629994c3c0fa48886dd99c75431d7a885fb842753fa
Status: Downloaded newer image for registry.openanolis.cn/openanolis/anolisos:8.6
 ---> 6f8a2912d1d7
Step 2/2 : RUN touch hello
 ---> Running in ca675e55ccb7
Removing intermediate container ca675e55ccb7
 ---> 5b86728702bd
Successfully built 5b86728702bd
Successfully tagged anolis-test:latest
[root]# docker run --rm anolis-test ls hello
hello

 

此外,我们也正在与阿里云容器服务团队进行合作,在阿里云 ACR 制品中心陆续上架龙蜥社区的容器镜像,大家可以直接查看阿里云 ACR 制品中心获取


团队招人啦:龙蜥云原生团队正在招聘中,欢迎大家一起加入龙蜥云原生,共建云原生社区生态,具体招聘信息点击这里查看。


相关链接:

龙蜥云原生 SIG 主页:

https://openanolis.cn/sig/cloud-native

—— 完 ——

加入龙蜥社群

加入微信群:添加社区助理-龙蜥社区小龙(微信:openanolis_assis),备注【龙蜥】与你同在;加入钉钉群:扫描下方钉钉群二维码。

云原生.png

 

相关实践学习
通过容器镜像仓库与容器服务快速部署spring-hello应用
本教程主要讲述如何将本地Java代码程序上传并在云端以容器化的构建、传输和运行。
Kubernetes极速入门
Kubernetes(K8S)是Google在2014年发布的一个开源项目,用于自动化容器化应用程序的部署、扩展和管理。Kubernetes通常结合docker容器工作,并且整合多个运行着docker容器的主机集群。 本课程从Kubernetes的简介、功能、架构,集群的概念、工具及部署等各个方面进行了详细的讲解及展示,通过对本课程的学习,可以对Kubernetes有一个较为全面的认识,并初步掌握Kubernetes相关的安装部署及使用技巧。本课程由黑马程序员提供。   相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
1月前
|
Kubernetes Cloud Native Docker
云原生时代的容器化实践:Docker和Kubernetes入门
【10月更文挑战第37天】在数字化转型的浪潮中,云原生技术成为企业提升敏捷性和效率的关键。本篇文章将引导读者了解如何利用Docker进行容器化打包及部署,以及Kubernetes集群管理的基础操作,帮助初学者快速入门云原生的世界。通过实际案例分析,我们将深入探讨这些技术在现代IT架构中的应用与影响。
97 2
|
1月前
|
运维 Cloud Native 虚拟化
一文吃透云原生 Docker 容器,建议收藏!
本文深入解析云原生Docker容器技术,涵盖容器与Docker的概念、优势、架构设计及应用场景等,建议收藏。关注【mikechen的互联网架构】,10年+BAT架构经验倾囊相授。
一文吃透云原生 Docker 容器,建议收藏!
|
18天前
|
Kubernetes Cloud Native 微服务
探索云原生技术:容器化与微服务架构的融合之旅
本文将带领读者深入了解云原生技术的核心概念,特别是容器化和微服务架构如何相辅相成,共同构建现代软件系统。我们将通过实际代码示例,探讨如何在云平台上部署和管理微服务,以及如何使用容器编排工具来自动化这一过程。文章旨在为开发者和技术决策者提供实用的指导,帮助他们在云原生时代中更好地设计、部署和维护应用。
|
1月前
|
运维 Kubernetes Cloud Native
云原生技术:容器化与微服务架构的完美结合
【10月更文挑战第37天】在数字化转型的浪潮中,云原生技术以其灵活性和高效性成为企业的新宠。本文将深入探讨云原生的核心概念,包括容器化技术和微服务架构,以及它们如何共同推动现代应用的发展。我们将通过实际代码示例,展示如何在Kubernetes集群上部署一个简单的微服务,揭示云原生技术的强大能力和未来潜力。
|
13天前
|
供应链 安全 Cloud Native
阿里云容器服务助力企业构建云原生软件供应链安全
本文基于2024云栖大会演讲,探讨了软件供应链攻击的快速增长趋势及对企业安全的挑战。文中介绍了如何利用阿里云容器服务ACK、ACR和ASM构建云原生软件供应链安全,涵盖容器镜像的可信生产、管理和分发,以及服务网格ASM实现应用无感的零信任安全,确保企业在软件开发和部署过程中的安全性。
|
7天前
|
安全 Java API
Nacos 3.0 Alpha 发布,在安全、泛用、云原生更进一步
近期,我们欣喜地宣布 Nacos 3.0 的第一个版本 Nacos 3.0-ALPHA 已经发布。Nacos 3.0 的目标是在 2.0 的基础上,进一步优化安全性、易用性和标准化。同时,我们将引入更多功能,帮助用户在分布式协调、AI 大模型、云原生等多种场景中更好地使用 Nacos,以提升其广泛适应性。
|
19天前
|
Kubernetes Cloud Native Docker
云原生之旅:从容器化到微服务
本文将带领读者踏上云原生的旅程,深入探讨容器化和微服务架构的概念、优势以及它们如何共同推动现代软件的发展。我们将通过实际代码示例,展示如何在Kubernetes集群上部署一个简单的微服务应用,并解释相关的配置和操作。无论你是云原生新手还是希望深化理解,这篇文章都将为你提供有价值的见解和实操指南。
|
1月前
|
Kubernetes Cloud Native Docker
云原生之旅:从传统架构到容器化服务的演变
随着技术的快速发展,云计算已经从简单的虚拟化服务演进到了更加灵活和高效的云原生时代。本文将带你了解云原生的概念、优势以及如何通过容器化技术实现应用的快速部署和扩展。我们将以一个简单的Python Web应用为例,展示如何利用Docker容器进行打包和部署,进而探索Kubernetes如何管理这些容器,确保服务的高可用性和弹性伸缩。
|
25天前
|
Kubernetes Cloud Native 开发者
云原生入门:从容器到微服务
本文将带你走进云原生的世界,从容器技术开始,逐步深入到微服务架构。我们将通过实际代码示例,展示如何利用云原生技术构建和部署应用。无论你是初学者还是有经验的开发者,这篇文章都将为你提供有价值的信息和启示。
|
1月前
|
运维 Cloud Native 云计算
云原生之旅:Docker容器化实战
本文将带你走进云原生的世界,深入理解Docker技术如何改变应用部署与运维。我们将通过实际案例,展示如何利用Docker简化开发流程,提升应用的可移植性和伸缩性。文章不仅介绍基础概念,还提供操作指南和最佳实践,帮助你快速上手Docker,开启云原生的第一步。

相关产品

  • 容器镜像服务