10.3. 使用 Subscription Manager 运行构建


10.3.1. 将 Subscription Manager 配置添加到构建中

使用 Subscription Manager 安装内容的构建必须为订阅的存储库提供适当的配置文件和证书颁发机构。

先决条件

您必须有权访问 Subscription Manager 的配置和证书颁发机构文件。

流程

  1. 为 Subscription Manager 配置创建 ConfigMap:

    $ oc create configmap rhsm-conf --from-file /path/to/rhsm/rhsm.conf
  2. 为证书颁发机构创建 ConfigMap:

    $ oc create configmap rhsm-ca --from-file /path/to/rhsm/ca/redhat-uep.pem
  3. 将 Subscription Manager 配置和证书颁发机构添加到 BuildConfig 中:

    source:
        configMaps:
        - configMap:
            name: rhsm-conf
          destinationDir: rhsm-conf
        - configMap:
            name: rhsm-ca
          destinationDir: rhsm-ca

10.3.2. 使用 Subscription Manager 执行 Docker 构建

Docker 策略构建可以使用 Subscription Manager 来安装订阅内容。

先决条件

必须添加授权密钥、Subscription Manager 配置和 Subscription Manager 证书颁发机构,作为构建输入。

流程

使用以下示例 Dockerfile 来通过 Subscription Manager 安装内容:

FROM registry.redhat.io/rhel7:latest
USER root
# Copy entitlements
COPY ./etc-pki-entitlement /etc/pki/entitlement
# Copy subscription manager configurations
COPY ./rhsm-conf /etc/rhsm
COPY ./rhsm-ca /etc/rhsm/ca
# Delete /etc/rhsm-host to use entitlements from the build container
RUN rm /etc/rhsm-host && \
    # Initialize /etc/yum.repos.d/redhat.repo
    # See https://access.redhat.com/solutions/1443553
    yum repolist --disablerepo=* && \
    subscription-manager repos --enable <enabled-repo> && \
    yum -y update && \
    yum -y install <rpms> && \
    # Remove entitlements and Subscription Manager configs
    rm -rf /etc/pki/entitlement && \
    rm -rf /etc/rhsm
# OpenShift requires images to run as non-root by default
USER 1001
ENTRYPOINT ["/bin/bash"]
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.