开发者
iSulad轻量级容器引擎实践
iSulad轻量级容器引擎实践
发表于2025/07/21
1030

iSulad轻量级容器引擎实践

一、iSulad简介

iSulad(Inelligent SUbcontainer Linux Application Delivery)是华为开源的一款轻量级容器引擎,旨在为用户提供一个简单、高效、可扩展的容器运行时环境。iSulad基于Docker的容器技术,但具有更低的资源消耗和更快的启动速度。iSulad支持多种容器镜像格式,包括Docker镜像、OCI镜像和CRI-O镜像等,并支持多种容器运行时,如runc、kata-containers和gVisor等。

二、配置实验环境

输入:yum group install -y "Development Tools"

接着输入:yum install -y jq

三、iSulad轻量级容器引擎实践

从YUM软件仓库安装iSulad软件,输入:yum install -y iSulad

配置容器镜像注册地址:iSulad 的主要配置文件为 /etc/isulad/daemon.json

配置内容如下

验证配置文件格式:

cat /etc/isulad/daemon.json | jq

能够正确显示内容,即表示格式合法。重新启动isulad,并查看isulad的运行状况:

systemctl restart isulad

systemctl status isulad

正确显示active

四、iSulad容器与镜像管理

1.运行容器busybox

isula run busybox echo "hello world"

第一次运行会拉取busybox的镜像,然后运行它的一个实例,并且调用echo命令打印hello world字符串。

2.容器交互式操作

使用isula run -it busybox 再次运行busybox:

-i参数即使没有连接到容器的标准输入,也要保持容器的标准输入打开。

 -t参数为容器分配一个伪终端 --tty。

输入isula ps,发现该容器还在运行。

只有当isula attach命令接入容器时,用exit退出才会自动终止容器。

3. 使用isula构建容器镜像并导出到 isulad

yum install -y isula-build

yum install -y docker-runc

然后,用systemctl start命令启动并查看版本

 systemctl start isula-build

 isula-build version

修改配置:

cp /etc/isula-build/registries.toml{,.before}

 vi /etc/isula-build/registries.toml

 cat /etc/isula-build/registries.toml

随后重启并验证

systemctl restart isula-build

isula-build info -H

接下来创建并导出:

mkdir -p ~/iSula/build && cd $_

 vi Dockerfile

 cat Dockerfile

创建脚本文件

赋予脚本执行权限:

chmod +x hello.sh

构建镜像并导出到 iSulad:

isula-build ctr-img build -f ./Dockerfile -o isulad:hello-isula-build:v0.1

# 查看 isula-build 中的镜像

isula-build ctr-img images

# 查看 iSulad 中的镜像

isula images

isula run hello-isula-build:v0.1

可见导出成功,该容器可以正常运行。

五、心得体会

通过本次实验,我对iSula轻量级容器技术有了初步的认识,特别是在iSulad容器引擎的安装、配置以及基本操作方面积累了一定的经验。另外,我也掌握了容器和镜像的管理技巧,尤其是在使用isula-build进行自定义镜像的构建和导出到iSulad的整个流程中得到了实践验证。配合老师对iSula、镜像和容器等核心概念的讲解,我对容器的基本流程、生命周期管理以及操作方式有了更全面的理解。这些收获为我后续深入学习和应用容器技术提供了坚实的基础。

收藏举报
Level 1
0
帖子
0
粉丝
0
获赞