跳转到内容

Compute

自定义模板

把任意仓库镜像注册成模板,这样你租用的就是自己的技术栈,而不是某个内置模板。

  • Manage compute 权限(权限表)。
  • 一个以 root 运行、能自行启动的镜像,已推送到仓库并带固定 tag。
  • 私有镜像还需要仓库的用户名和密码,或访问令牌。

一个容器镜像加一条可选的启动命令,以一个名字保存下来。它会出现在部署向导第 2 步,和内置模板并列,带 My Template 徽章 —— 参见部署 GPU 实例。

它能不能用,取决于三条规则:

  • 必须以 root 运行。 基础镜像会切换到非 root 用户的(例如默认的 jovyan 和 coder)会导致密码配置失败。推送前加一层 USER root。
  • 必须能跑起来。 Grafilab 在保存时会校验镜像,起不来的会被拒绝(DOCKER_IMAGE_NOT_RUNNABLE)。
  • 固定 tag。 一个下周就指向别的东西的镜像,会让你的实例无法复现。

这里没有端口字段。端口是在实例启动后用管理实例页面上的 Web Access 发布的。

  1. 打开 Compute,进入部署向导的 Template Selection。点 + 打开 Create New Template。

  2. 填写 Name(模板在你列表里显示的名字)和 Container Image:“Docker Hub, GHCR, or other registry image in namespace/image:tag format — or paste a Docker Hub page link.”

  3. 公开镜像把 Registry Credentials 留在 “No credential”。该字段的说明写着 “Only needed for private images.”

  4. 可选地填 Container Start Command:“Optional — leave empty to use the image’s default start command.” 例如:

    终端窗口
    bash -c "jupyter lab --ip 0.0.0.0 --port 80 --allow-root"

    Screenshot of the Create New Template form with the Name, Container Image, Registry Credentials and Container Start Command fields

  5. 点 Save Template。Grafilab 拉取并测试镜像期间,按钮显示 Validating image…,之后模板加入你的列表。

  1. 在 Create New Template 里展开 Registry Credentials 下拉,选择 Create Registry Credential。

  2. 填写 Credential Name、Username 和 Password。仓库支持的话,用访问令牌而不是账号密码。

  3. 点 Save。你会看到 “Registry credential is created successful!”,该凭据随即被选中到模板上。

Docker Templates 页面(/docker-template)是完整列表。它没有侧边栏入口 —— 通过 URL 访问,或者从首页仪表盘的 Quick Deploy → Docker Template 卡片进入。

  • Add New Template 打开的是和向导里一样的表单。
  • 每一行显示它的 Path,并带 Edit 和 Delete 操作。
  • Edit 打开详情表单;Update 保存,Back 离开。
  • Delete 会询问 “Are you sure you want to delete this template? This action cannot be undone.”

删除模板只是把它从向导里移除。