第 3 章 在 code-server 中工作
code-server 是一个基于 Web 的交互式开发环境,支持多种编程语言,包括 Python,用于使用 Jupyter 笔记本。使用 code-server workbench 镜像,您可以使用各种扩展来自定义工作台环境来满足您的需求,以添加新的语言、主题、调试器并连接到其他服务。如需更多信息,请参阅 GitHub 中的 code-server。
基于 Elyra 的管道不适用于 code-server workbench 镜像。
3.1. 创建 code-server workbenches 复制链接链接已复制到粘贴板!
您可以创建一个空白 Jupyter 笔记本,或者从几个不同的源在 code-server 中导入 Jupyter 笔记本。
3.1.1. 创建工作台 复制链接链接已复制到粘贴板!
当您创建工作台时,您可以指定一个镜像(IDE、软件包和其他依赖项)。您还可以配置连接、集群存储并添加容器存储。
先决条件
- 您已登陆到 Red Hat OpenShift AI。
-
如果使用 OpenShift AI 组,则作为 OpenShift 中的用户组或 admin 组(如
rhoai-users
或rhoai-admins
)的一部分。 - 您已创建了一个项目。
如果您在 Red Hat OpenShift AI 之外创建了 Simple Storage Service (S3)帐户,并希望创建到现有 S3 存储桶的连接,则具有存储存储桶的以下凭证信息:
- 端点 URL
- access key
- Secret 密钥
- 区域
- bucket 名称
如需更多信息,请参阅在 S3 兼容对象存储中使用数据。
流程
在 OpenShift AI 仪表板中点 Data Science projects。
Data Science 项目页将打开。
点您要将工作台添加到的项目的名称。
此时会打开项目详情页面。
- 单击 Workbenches 选项卡。
点 Create workbench。
Create workbench 页面将打开。
- 在 Name 字段中输入工作台的唯一名称。
可选:如果要更改工作台的默认资源名称,点 Edit resource name。
资源名称是您在 OpenShift 中标记的资源。有效字符包括小写字母、数字和连字符(-)。资源名称不能超过 30 个字符,它必须以字母或数字开头,并以字母或数字结尾。
注: 您无法在创建工作台后更改资源名称。您只能编辑显示名称和描述。
- 可选:在 Description 字段中输入工作台的描述。
在 Notebook image 部分,完成字段以指定要与工作台搭配使用的工作台镜像。
从 Image selection 列表中,选择一个适合您用例的工作台镜像。工作台镜像包含 IDE 和 Python 软件包(可重复利用的代码)。(可选)点击 View package information 查看包含在您选择的镜像中的软件包列表。
如果工作台镜像有多个可用的版本,请从 Version 选择 列表中选择要使用的工作台镜像版本。要使用最新的软件包版本,红帽建议您使用最近添加的镜像。
注意在创建工作台后,您可以更改工作台镜像。
在 Deployment size 部分中,从 Hardware profile 列表中为您的工作台选择一个合适的硬件配置集。硬件配置集指定分配给容器的 CPU 数量和内存量,为两者设置保证最小值(request)和最大值(limit)。要更改这些默认值,请点 Customize resource requests and limit,并输入新的最小值(request)和最大值(limit)值。
重要默认情况下,硬件配置集在仪表板导航菜单和用户界面中会被隐藏。另外,与已弃用的加速器配置集功能关联的用户界面组件仍然会显示。要在仪表板导航菜单和与硬件配置集关联的用户界面组件中显示 Settings
Hardware profiles 选项,请在 OpenShift 中的 OdhDashboardConfig
自定义资源(CR)中将disableHardwareProfiles
值设置为false
。如需更多信息,请参阅 Dashboard 配置选项。可选: 在 Environment variables 部分中,选择 并指定任何环境变量的值。
在工作台配置期间设置环境变量可帮助您稍后节省时间,因为您不需要在笔记本的正文或使用 IDE 命令行界面定义它们。
如果使用 S3 兼容存储,请添加这些推荐的环境变量:
-
AWS_ACCESS_KEY_ID
指定 Amazon Web Services 的 Access Key ID。 -
AWS_SECRET_ACCESS_KEY
指定在AWS_ACCESS_KEY_ID
中指定的帐户的 Secret 访问密钥。
如果在添加变量时选择 Secret,OpenShift AI 将凭证作为 Kubernetes secret 存储在受保护的命名空间中。
-
在 Cluster storage 部分中,为您的工作台配置存储。选择以下选项之一:
创建新的持久性存储 来创建在关闭工作台后保留的存储。完成相关字段以定义存储:
- 为集群存储输入一个名称。
- 输入集群存储的描述。
为 集群存储选择存储类。
注意在将集群存储添加到工作台后,您无法更改存储类。
- 在 持久性存储大小 下,以千兆字节或兆字节输入新大小。
- 使用现有的持久性存储 来重复使用现有存储并从 Persistent storage 列表中选择存储。
可选:您可以在工作台中添加连接。连接是一个资源,其中包含连接到数据源或接收器(如对象存储桶)所需的配置参数。您可以使用存储存储桶来存储数据、型号和管道工件。您还可以使用连接来指定您要部署的模型的位置。
在 Connections 部分中,使用现有连接或创建新连接:
使用现有连接,如下所示:
- 单击 Attach existing connection。
- 从 Connection 列表中,选择一个您之前定义的连接。
创建新连接,如下所示:
- 点 Create connection。此时会出现 Add connection 对话框。
- 从 Connection type 下拉列表中,选择连接的类型。此时会出现 Connection details 部分。
如果您在上一步中选择了 S3 兼容对象存储,请配置连接详情:
- 在 Connection name 字段中输入连接的唯一名称。
- 可选:在 Description 字段中输入连接的描述。
- 在 Access key 字段中,输入 S3 兼容对象存储供应商的访问密钥 ID。
- 在 Secret key 字段中,为您指定的 S3 兼容对象存储帐户输入 secret 访问密钥。
- 在 Endpoint 字段中,输入 S3 兼容对象存储桶的端点。
- 在 Region 字段中,输入 S3 兼容对象存储帐户的默认区域。
- 在 Bucket 字段中,输入 S3 兼容对象存储桶的名称。
- 点 Create。
如果上一步中选择了 URI,请配置连接详情:
- 在 Connection name 字段中输入连接的唯一名称。
- 可选:在 Description 字段中输入连接的描述。
- 在 URI 字段中,输入 Uniform Resource Identifier (URI)。
- 点 Create。
- 点 Create workbench。
验证
- 您创建的工作台会出现在项目的 Workbenches 选项卡中。
- 您在创建过程中与工作台关联的任何集群存储都会出现在项目的 Cluster storage 选项卡中。
- 当工作台服务器启动时,Workbenches 选项卡上的 Status 列会显示 Starting 状态,并在工作台成功启动时显示 Running。
-
可选:点击打开图标(
)在新窗口中打开 IDE。
3.1.2. 从本地存储上传现有的笔记本文件到 code-server 复制链接链接已复制到粘贴板!
您可以从本地存储将现有笔记本加载到 code-server 中,以继续工作,或为新用例调整项目。
先决条件
- 您有一个正在运行的 code-server workbench。
- 本地存储中有一个笔记本文件。
流程
-
在 code-server 窗口中,从活动栏中选择菜单图标(
),→ File
Open File。 - 在 Open File 对话框中,单击 Show Local 按钮。
找到并选择笔记本文件,然后单击 Open。
该文件显示在 code-server 窗口中。
- 保存文件,然后将更改推送到您的存储库。
验证
- 笔记本文件会出现在 code-server Explorer 视图中。
- 您可以在 code-server 窗口中打开笔记本文件。