跳到内容跳到页面导航:上一页 [access key p]/下一页 [access key n]
documentation.suse.com / 容器指南 / 用于构建映像和管理容器的工具
适用范围 SUSE Linux Enterprise Server 15 SP4

3 用于构建映像和管理容器的工具

本章简要概述了用于构建映像和管理容器的工具。下文提到的大部分工具都包含在 SUSE Linux Enterprise Server 15 SP4 Containers 模块中。您可以在 SUSE Customer CenterContainers 模块中查看完整的软件包列表。

3.1 可供客户使用的工具

3.1.1 Docker

Docker 是一个用于创建和管理容器的系统。其核心是 Docker 开源引擎,这是一种轻量级虚拟化解决方案,可在单台主机上同时运行多个容器。可以使用 Dockerfile 构建 Docker 容器(参见 Dockerfile)。有关 Docker 开源引擎的总体介绍,请参见第 4 章 “Docker 开源引擎概述

3.1.2 Podman

Podman 表示 Pod Manager 工具。它是一个无守护程序的容器引擎,用于在 Linux 系统上开发、管理和运行 Open Container Initiative (OCI) 容器,可以直接取代 Docker。Podman 是 openSUSE Kubic(基于 openSUSE 构建的 Kubernetes 认证发行套件)中的默认容器运行时。有关 Podman 的总体介绍,请参见第 11 章 “Podman 概述

3.1.3 Buildah

Buildah 可帮助您构建 OCI 容器映像。Buildah 是 Podman 的互补工具,podman build 使用它来执行容器映像构建。Buildah 可让您从头开始构建映像,也可使用 Dockerfile 从现有映像构建映像。使用 Buildah 命令行工具和基于 OCI 的底层技术(例如 containers/imagecontainers/storage)构建的 OCI 映像具有可移植性,因此可以在 Docker 开源引擎环境中运行。

有关安装和使用 Buildah 的信息,请参见第 12 章 “Buildah 概述

3.2 SUSE 构建工具

3.2.1 Open Build Service

Open Build Service (OBS) 提供了免费的基础结构,可用于构建和储存 RPM 软件包(包括各种容器格式)。OBS 容器注册表提供由 OBS 构建的所有容器映像的详细列表,使用命令完成将映像提取到您的本地 Docker 环境的操作。您可以根据特定需求修改 OBS openSUSE 容器映像模板,这是创建您自己的容器分支的最简单方法。您可以使用 Dockerfile 通过本机 Docker 工具从现有映像构建容器映像。也可以使用 KIWI 映像构建解决方案从头开始构建映像。

https://openbuildservice.org/2018/05/09/container-building-and-distribution/ 上提供了有关如何在 OBS 上构建映像的说明。

3.2.2 KIWI

KIWI Next Generation 是一种用于构建映像的多功能工具。除容器映像、常规安装 ISO 映像以及适用于虚拟机的映像之外,KIWI 还可构建通过 PXE 或 Vagrant 盒子引导的映像。KIWI 中的主要构建基块是映像 XML 描述,一个包含 config.xml.kiwi 文件以及脚本或配置数据的目录。使用 KIWI 创建映像的过程是完全自动化的,不需要任何用户交互。映像创建过程所需的任何信息由主要配置文件 config.xml 提供。可以使用 config.shimages.sh 脚本自定义映像。

注意
注意

请务必区分 KIWI NG(当前版本 9.20.9)及其不再维护的旧版本(7.x.x 或更早版本,现在称为 KIWI 旧版)。

有关如何安装 KIWI 以及使用 KIWI 构建映像的特定信息,请参见 KIWI 文档KIWI GitHub 软件源上提供了一系列示例映像描述。

KIWI 手册页提供了使用该工具的相关信息。要访问手册页,请安装 kiwi-man-pages 软件包。

3.3 构建官方 SLE 映像

只有使用内部构建服务构建的映像才会被视为官方映像。

https://build.opensuse.org 上未提供官方 SLE 容器映像,从该网站导出的 RPM 与内部 RPM 并不相同。这意味着无法在 https://build.opensuse.org 上构建官方支持的映像。