2.2. 使用 Cookiecutter 创建 Python S2I 应用程序


您可以使用 Cookiecutter 快速创建适合 Red Hat OpenShift AI 的应用程序。Cookiecutter 是一个 Python 库,可为您的数据科学工作创建一个灵活、标准化的项目结构。您可以使用 Cookiecutter 来进一步自定义项目的存储库。例如,您可以修改存储库的目录结构,以满足您的项目的要求。

先决条件

  • 启动并运行 Jupyter 服务器。
  • 您有一个 GitHub 帐户。
  • 您有凭证来访问包含您要使用的相关模板的 GitHub 存储库。

流程

  1. 在 JupyterLab 界面中,点 File New Terminal
  2. 在终端中,运行 pip install 命令来安装 Cookiecutter。

    pip install cookiecutter
    Copy to Clipboard Toggle word wrap
  3. 运行 cookiecutter 命令,从 Cookiecutter 存储库模板创建项目。

    cookiecutter template-repository-URL
    Copy to Clipboard Toggle word wrap

    template-repository-URL 替换为模板存储库的 URL: https://github.com/opendatahub-io/odh-s2i-project-cookiecutter

  4. 提示时,提供以下信息:

    1. 项目的名称。
    2. 存储库的名称。
    3. 项目的作者名称。
    4. 项目的描述。
    5. 您的开源许可证文件类型。

      Cookiecutter 模板存储库的内容显示在左侧栏中的 File Browser 中。

  5. 在 GitHub 中创建存储库。

    1. 在 GitHub 主页右上角,点击 + New repository

      这时将打开 Create a new repository 页面。

    2. Repository template 字段中,选择要使用的模板。
    3. 可选: 选择 Include all branch 复选框,将模板存储库的分支复制到您的新存储库中。
    4. Owner 字段中,选择存储库所有者的用户名。
    5. Repository name 字段中,输入存储库的名称。
    6. 可选:在 Description 字段中输入存储库的描述。
  6. 设置存储库的可见性级别。

    1. 为确保存储库对任何人可见,请保留 Public (公共)。默认情况下,存储库的可见性设置为 Public
    2. Private 以选择哪些用户可以查看存储库并提交到存储库。
    3. Create repository
  7. 在您的 Jupyter 服务器上克隆存储库。

    1. 在 JupyterLab 界面中,点 Git Clone a Repository

      此时会显示克隆存储库对话框。

    2. 输入您要克隆的存储库的 URL。
    3. 单击 Clone

      克隆的存储库位于左侧栏中的文件浏览器中。

    4. 在文件浏览器中,将 Cookiecutter 创建的文件和目录移到您克隆的存储库。
  8. 将您的更改推送到远程存储库。

    1. 在左侧侧边栏中,点 Git ( The Git icon )。
    2. 如果您有未跟踪的更改,请在 Changes 选项卡中将光标悬停在 Untracked 部分栏上,然后点 jupyter git add or commit
    3. 如果您的文件包含更改,在 Changes 选项卡中,将光标悬停在 Changed 部分栏上,点 jupyter git add or commit
    4. Required 字段中,输入您的更改概述。
    5. Description 字段中,输入您的更改描述。
    6. Commit
    7. 在 JupyterLab 接口中,点击 Git Push to Remote 将您的更改推送到远程存储库。

      此时会打开所需的 Git 凭证

    8. 输入您的凭证来访问远程存储库。
    9. 点击 确定

验证

  • 您可以访问从模板创建的远程存储库。
  • 您可以查看推送在远程存储库中的更改。
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat