This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.第 6 章 使用 Buildah 自定义镜像构建
使用 OpenShift Container Platform 4.2 时,主机节点上不会出现 Docker 套接字。这意味着,不能保证自定义构建的 mount docker socket 选项会提供可在自定义构建镜像中使用的可访问 Docker 套接字。
如果您需要此功能来构建和推送镜像,请将 Buildah 工具添加到自定义构建镜像中,并在自定义构建逻辑中使用它来构建并推送镜像。以下是如何使用 Buildah 运行自定义构建的示例。
使用自定义构建策略需要普通用户默认情况下不具备的权限,因为它允许用户在集群上运行的特权容器内执行任意代码。此级别的访问权限可被用来进行可能对集群造成损害的操作,因此应仅授权给信任的用户。
先决条件
- 查看如何授予自定义构建权限。
6.1. 创建自定义构建工件 复制链接链接已复制到粘贴板!
您必须创建要用作自定义构建镜像的镜像。
流程
从空目录着手,使用以下内容创建名为
Dockerfile
的文件:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在同一目录中,创建名为
Dockerfile.sample
的文件。此文件将包含在自定义构建镜像中,并且定义将由自定义构建生成的镜像:FROM docker.io/centos:7 RUN touch /tmp/built
FROM docker.io/centos:7 RUN touch /tmp/built
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在同一目录中,创建名为
build.sh
的文件。此文件包含自定义生成运行时将要执行的逻辑:Copy to Clipboard Copied! Toggle word wrap Toggle overflow