构建定制映像以安装 R 和 Python 软件包

您可以根据 IBM Watson Studio 中提供的 SPSS Modeler 运行时映像来构建定制映像。

准备工作

您必须具有 Cloud Pak for Data 集群管理员角色才能创建和注册定制映像。

注: 如果使用定制映像,那么您将负责使用对 Watson Studio中的可用运行时映像进行的所有最新更新来更新定制映像。 您负责安装新的修订包,安全性更新或任何其他更新。 发布新版本的 Cloud Pak for Data 时,重建所有定制映像是保持其更新的最佳方法。

关于本任务

您可以使用定制图像来优化 SPSS Modeler 运行时的标准配置。 您还可以在无法向因特网公开任何操作的气郄环境中使用定制映像。

过程

  1. 准备构建新映像。
    1. 下载要定制的 SPSS Modeler 运行时映像的配置文件。 请参阅 下载配置文件
    2. 下载该配置中的映像。 请参阅 下载映像
    3. 从 IBM 授权注册或私人 Container Registry 获取注册表 URL。
      SPSS Modeler 运行时映像存储在 Docker 映像注册表中。 在 Cloud Pak for Data中,只能使用 Cloud Pak for Data Red Hat OpenShift 集群外部的外部注册表。 要使用该注册表,您需要 Cloud Pak for Data 安装期间使用的外部注册表的 URL。 在您运行的所有命令和脚本中使用相同的 URL。
    4. 下载 build-image-for-python-r-packages.zip ,其中包含用于安装 R 和 Python 软件包的 Dockerfile 和脚本。
      归档包含以下文件:
      • install-packages.R 是用于安装 R 软件包的主脚本。
      • install-Python-packages.sh 是用于安装 Python 软件包的主脚本。
      • Dockerfile 是用于构建定制映像的主要条目。

  2. 使用下载的文件创建定制运行时映像,并添加 R 或 Python 包。
    1. 添加定制并构建新映像。 请参阅 创建定制映像
    2. 在归档的 Dockerfile 中,使用从 IBM 授权注册表或专用 Container Registry中提取的实际 spss-modeler 基本映像的标记来更新 <spss-modeler-base-image>
      Dockerfile的示例:
      FROM <spss-modeler-base-image> as custom-runtime-for-python-r-packages
      
      USER modeler-user:modeler-user
      
      COPY --chown=modeler-user install-packages.R /tmp/install/
      COPY --chown=modeler-user install-Python-packages.sh /tmp/install/
      
      RUN umask 002 \
       && /opt/r/lib/R/bin/Rscript /tmp/install/install-packages.R \
       && bash /tmp/install/install-Python-packages.sh \
       && rm -rf /tmp/install
    3. 如果要安装 R 软件包,请将所有软件包名称添加到 install-packages.R中的列表。 每个程序包名都必须使用双引号。
      install.packages(c(
      "pkg-name1",
      "pkg-name2",
       ...),
      repos='http://cran.rstudio.com')
    4. 如果要安装 Python 软件包,请在 install-Python-packages.sh中的 pip install 命令之后添加所有软件包名称。
      set -e -o pipefail
      MODELER_HOME=/opt/IBM/SPSS/ModelerServer/Cloud/
      LD_LIBRARY_PATH=$MODELER_HOME/python/lib $MODELER_HOME/python_venv/bin/pip install \
        pkg-name1 \
        pkg-name2 \
        ...
    5. 如果要仅安装 R 软件包或仅安装 Python 软件包,请在 Dockerfile 中注释掉要跳过的安装的行。
      缺省情况下, Dockerfile 调用 install-packages.Rinstall-Python-packages.sh 以同时安装 R 和 Python 软件包。
      • 要仅安装 R 软件包,请注释掉 && bash /tmp/install/install-Python-packages.sh \
      • 要仅安装 Python 软件包,请注释掉 && /opt/r/lib/R/bin/Rscript /tmp/install/install-packages.R \
  3. 将映像推送到容器服务器以注册该映像。 请参阅 注册定制映像
  4. 更改并上载配置文件以使用新的定制映像。 请参阅 上载已更改的配置