制作镜像
前提条件
请按照表1所示,获取对应操作系统的软件包与打包镜像所需Dockerfile文件与脚本文件,断点续训软件包名称中{version}表示版本号。
软件包 |
是否必选 |
说明 |
获取方法 |
---|---|---|---|
mindformers-{version}-py3-none-any.whl |
是 |
MindSpore Transformers套件,构建大模型训练、微调、评估、推理、部署的全流程开发套件。MindSpore的master版本请使用r0.3分支代码版本。 |
|
Dockerfile |
是 |
制作镜像需要。 |
用户根据业务自行准备。 |
为了防止软件包在传递过程中或存储期间被恶意篡改,下载软件包时需下载对应的数字签名文件用于完整性验证。
在软件包下载之后,请参考《OpenPGP签名验证指南》,对从Support网站下载的软件包进行PGP数字签名校验。如果校验失败,请不要使用该软件包,先联系华为技术支持工程师解决。
使用软件包安装/升级之前,也需要按上述过程先验证软件包的数字签名,确保软件包未被篡改。
运营商客户请访问:https://support.huawei.com/carrier/digitalSignatureAction
企业客户请访问:https://support.huawei.com/enterprise/zh/tool/pgp-verify-TL1000000054

本章节以Ubuntu操作系统为例。
操作步骤
- 以root用户登录服务器。
- 将准备的软件包MindFormers源码上传到服务器任意目录(如“/home/test”)。
- 执行以下步骤准备Dockerfile文件。
- 进入软件包所在目录,执行以下命令创建Dockerfile文件(文件名示例“Dockerfile”)。
vi Dockerfile
- 请参见Dockerfile编写示例,将内容写入Dockerfile文件后执行:wq命令保存内容。
- 进入软件包所在目录,执行以下命令创建Dockerfile文件(文件名示例“Dockerfile”)。
- 进入软件包所在目录,执行以下命令,构建容器镜像,注意不要遗漏命令结尾的“.”。
docker build -t [OPTIONS] 镜像名_系统架构:镜像tag .
例如:docker build -t test_train_arm64:v1.0 .
命令解释如表2所示。
表2 命令参数说明 参数
说明
-t
指定镜像名称。
OPTIONS
“--disable-content-trust”选项:忽略校验,默认开启。出于安全考虑,这里推荐设置关闭。
镜像名_系统架构:镜像tag
镜像名称与标签,请用户根据实际情况写入。
当出现“Successfully built xxx”表示镜像构建成功。
- 构建完成后,执行以下命令查看镜像信息。
docker images
回显示例如下。
REPOSITORY TAG IMAGE ID CREATED SIZE test_train_arm64 v1.0 d82746acd7f0 27 minutes ago 749MB
编写示例
使用过程中请根据实际情况修改软件包版本及架构。
- Dockerfile编写示例。
- Ubuntu ARM系统Dockerfile示例。
FROM xxx # 基础训练镜像 ARG MINDFORMERS_PKG=mindformers-{version}-py3-none-any.whl WORKDIR /tmp COPY . ./ ENV http_proxy xxx ENV https_proxy xxx # 配置Python pip源 RUN mkdir -p ~/.pip \ && echo '[global] \n\ index-url=https://pypi.doubanio.com/simple/\n\ trusted-host=pypi.doubanio.com' >> ~/.pip/pip.conf # 安装MindFormers RUN pip install $MINDFORMERS_PKG ENV http_proxy "" ENV https_proxy ""
- Ubuntu x86_64系统Dockerfile示例。
FROM xxx # 基础训练镜像 ARG MINDFORMERS_PKG=mindformers-{version}-py3-none-any.whl WORKDIR /tmp COPY . ./ ENV http_proxy xxx ENV https_proxy xxx # 配置 Python pip源 RUN mkdir -p ~/.pip \ && echo '[global] \n\ index-url=https://pypi.doubanio.com/simple/\n\ trusted-host=pypi.doubanio.com' >> ~/.pip/pip.conf # 安装MindFormers RUN pip install $MINDFORMERS_PKG ENV http_proxy "" ENV https_proxy ""
为了使Dockerfile更加安全,用户可以根据业务在其中定义HEALTHCHECK检查。通过在容器内部运行HEALTHCHECK [OPTIONS] CMD命令来检查容器的运行状况。
- Ubuntu ARM系统Dockerfile示例。