跳到主要内容
更新时间:2026-07-29 03:15:57

平台预置镜像仅可以满足部分通用场景下的镜像需求,无法满足所有用户的镜像需求,为满足用户特定场景需求,平台支持用户通过 Dockerfile 、 仓库地址 、 镜像tar包 以及 docker push 多种构建方式,自定义构建和管理镜像,满足后续其他模块的使用需求。

前提条件

  • 用户登录平台,打开”镜像管理——>自定义镜像“目录;
  • 首次使用用户需创建个人的镜像空间,用以存储个人的镜像数据,创建要求详见下图:

image.png

操作步骤

通用步骤​

开通镜像空间后,允许用户通过Dockerfile、仓库地址、镜像tar包以及docker push方式构建镜像,在构建镜像时,用户需为镜像完善相关信息。

参数

描述

镜像名称
  • 必填,填写镜像的名称信息;
  • 输入要求:128字符以内,支持由小写字符、数字和._-组成,不可以特殊字符开头和结尾,且特殊字符不可连续;
镜像标签
  • 必填,填写镜像标签,也可以以此来记录镜像版本;
  • 输入要求:128字符以内,支持由小写字符、数字和._-组成,不可以特殊字符开头和结尾,且特殊字符不可连续;
使用场景
  • 必填,用以区分当前镜像具体的使用场景,包括调试镜像、训练镜像和推理镜像,设定场景后用户在选择镜像时可针对性过滤选择;
  • 场景可多选;
操作系统
  • 非必填,用以标识当前镜像适配的操作系统信息;
  • 支持选择Ubuntu、CentOS、Debian、Red Hat、EulerOS和其他;
  • 操作系统为单选项,用户自行按需选择,不作为强校验项或过滤项,只作为后续镜像使用时的参考项;
框架
  • 非必填,用以标识当前镜像运行的环境框架类型;
  • 支持选择Pytroch、TensorFlow、OneFLow、MindSpore、Transformer、DeepSpeed、MXNet、Keras、scikit-learn、XGBoost、Colossal-AI、PaddlePaddle、LightGBM、其他;
  • 框架为多选项,用户按需选择,不作为强校验项或过滤项,只作为后续镜像使用时的参考项;
加速卡类型
  • 非必填,用以标识当前镜像适配的加速卡信息;
  • 支持选择GPU、Ascend、MLU、其他和无;
  • 加速卡类型为多选项,用户按需选择,不作为强校验项或过滤项,只作为后续镜像使用时的参考项;
访问方式
  • 非必填,用以标识当前镜像适配的访问方式;
  • 包括SSH、JupyterLab、VSCode、RStudio、远程桌面、其他;
  • 访问方式为多选项,用户根据当前镜像构建的实际信息选择,后续在创建开发环境时系统将对镜像进行访问方式的安装包校验,若不具备当前安装包,则无法通过特定方式访问镜像,从而影响镜像的使用。
创建方式
  • 必填,自定义镜像构建方式;支持Dockerfile、仓库地址、镜像tar包;
  • Dockerfile:
    • 用户需选择镜像适配的CPU架构信息,支持x86-64和arm64;
    • 支持本地上传和通过文件存储上传的方式上传Dockerfile文件;
    • Dockerfile文件不超过20M;
  • 仓库地址:
    • 支持用户输入公开镜像地址,系统将自动通过互联网进行镜像拉取;
    • 支持用户输入其他私有镜像下的镜像地址,输入账号密码后授权平台进行镜像拉取;
    • 针对境外镜像,无法保证可正常拉取;
    • 镜像地址方式构建的镜像,系统将自动判断其适配的CPU架构信息并进行信息回填;
  • 镜像tar包:
    • 支持用户将镜像tar包通过文件存储同步的方式进行上传;
    • 镜像tar包方式构建的镜像,系统将自动判断其适配的CPU架构信息并进行信息回填;
镜像描述
  • 非必填,用户对当前自定义镜像的描述信息,用以后续维护和管理镜像;
  • 描述信息不允许超过500字符;

构建镜像​

Dockerfile构建镜像​

1、Dockerfile是一个文本文件,通过一系列的指令,进行自动化构建Docker镜像,通过Dockerfile,用户可以定义构建镜像所需的步骤、依赖关系和配置项,确保镜像构建的准确性。

2、关于Dockerfile的语法使用详见官方文档。

3、用户仅需在自定义镜像——>页面上传的创建页面选择Dockerfile的构建方式,并按照构建要求编写Dockerfile文件即可。

image.png

下述为通过Dockerfile构建的示例:

FROM registry.cnbita.com:5000/wuyiqiang/python3.9_cuda11.3_pytorch1.12:v1 # 镜像来源,基础镜像
WORKDIR /app # 设置工作路径
RUN apt update \ # 安装需求组件
&& apt install vim -y \
&& apt install iproute2 -y \
&& apt install -y openssh-server -y \
&& apt install bind9-host -y
RUN pip install colossalai
RUN sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config
COPY getIP.sh getIP.sh # 将本地文件copy到镜像中,基于设置的工作路径
COPY train.py train.py
CMD ["/bin/bash"] # 镜像启动命令

仓库地址构建镜像​

通过镜像仓库地址构建需在构建页面选择镜像地址的构建方式。

image.png

镜像来源为个人空间镜像​

若您前期已通过Dockerpush命令将镜像存储至平台个人镜像仓库下,您只需登录镜像仓库,注意, 镜像仓库登录的账号密码是您开通个人空间时的密码 ,不一定是登录平台账号密码。若已忘记可通过重置的方式找回。

1、找回密码:

image.png

image.png

2、登录镜像仓库:

image.png

3、获取镜像地址:

image.png

镜像来源为平台镜像​

当您所需构建的镜像为平台镜像时,只需找到平台镜像页面,找到对应的镜像,复制其镜像地址即可;

image.png

镜像来源于境外镜像仓库​

平台不支持自动拉取境外镜像仓库镜像,用户若需构建,需自行将镜像拉取至本地后,在通过Dockerfile或tar包方式构建。

tar包构建镜像​

镜像tar包是容器镜像的一种打包形式,它将容器镜像的所有内容(包括操作系统、应用程序及其依赖的库等)打包成一个tar格式的文件。具体操作步骤:

a、定位到自定义镜像页面,点击创建镜像——>页面上传,选择镜像tar包;

b、选择tar包存储的存储地址,系统将自动拉取并构建镜像;

image.png

客户端上传(平台镜像仓库)​

平台内置镜像仓库,支持用户通过Docker命令将镜像推送至平台镜像仓库个人空间中,通常情况下镜像推送完成后自定义镜像列表将自动更新推送到平台镜像仓库个人空间下的新镜像信息。如长时间等待后镜像列表仍未能成功更新推送的镜像信息,可在镜像仓库中获取镜像仓库地址,然后通过仓库地址添加的方式在页面中同步构建镜像。具体操作步骤:

a、打开自定义镜像页面,点击创建镜像按钮,选择客户端上传,打开客户端上传镜像操作指南;

b、用户需在本机安装Docker环境,具体安装步骤可见Windows、Linux、Mac。

c、安装完成后,用户可通过命令行的方式登录,并将本地镜像推送至个人空间中;

d、推送成功后,可通过仓库地址方式将镜像同步至自定义镜像页面,支持后续使用,具体操作可见来源为个人空间镜像。

image.png

image.png