云服务器内容精选
-
创建开发环境并使用 镜像注册成功后,即可在ModelArts控制台的Notebook页面,创建开发环境时选择该 自定义镜像 。 图7 创建开发环境 打开开发环境,即可看到Dockerfile中创建的conda环境pytorch_1_8。 图8 打开开发环境 单击图中的pytorch_1_8,即可创建一个ipynb文件,导入torch,可以看到安装的pytorch 1.8已经能够使用。 图9 创建一个ipynb文件 再打开一个Terminal,查看ffmpeg和gcc的版本,是Dockerfile中安装的版本。 图10 查看ffmpeg和gcc的版本
-
制作自定义镜像 这一节描述如何编写一个Dockerfile,并据此构建出一个新镜像在Notebook创建实例并使用。关于Dockerfile的具体编写方法,请参考官网。 查询基础镜像(第三方镜像可跳过此步骤) ModelArts提供的公共镜像,请参考Notebook专属预置镜像列表,根据预置镜像的引擎类型在对应的章节查看镜像URL。 连接 容器镜像服务 。 登录容器 镜像服务 控制台。选择左侧导航栏的“总览”,单击页面右上角的“登录指令”,在弹出的页面中单击复制登录指令。 图4 获取登录指令 此处生成的登录指令有效期为24小时,如果需要长期有效的登录指令,请参见获取长期有效登录指令。获取了长期有效的登录指令后,在有效期内的临时登录指令仍然可以使用。 登录指令末尾的 域名 为镜像仓库地址,请记录该地址,后面会使用到。 在安装容器引擎的机器中执行上一步复制的登录指令。登录成功会显示“Login Succeeded”。 拉取基础镜像或第三方镜像(此处以基础镜像举例,第三方镜像直接替换镜像地址)。 拉取ModelArts提供的公共镜像(请参考预置镜像)。 docker pull swr.cn-north-4.myhuaweicloud.com/atelier/notebook2.0-pytorch-1.4-kernel-cp37:3.3.3-release-v1-20220114 编写Dockerfile。 vim一个Dockerfile,如果使用的基础镜像是ModelArts提供的公共镜像,Dockerfile的具体内容可参考Dockerfile文件(基础镜像为ModelArts提供)。 如果使用的基础镜像是第三方镜像(非ModelArts提供的公共镜像),Dockerfile文件中需要添加uid为1000的用户ma-user和gid为100的用户组ma-group,具体可参考Dockerfile文件(基础镜像为非ModelArts提供)。 本例的Dockerfile将基于PyTorch基础镜像安装pytorch 1.8, ffmpeg 3和gcc 8,构建一个面向AI任务的镜像。 构建镜像 使用docker build命令从Dockerfile构建出一个新镜像。命令参数解释如下: “-t” 指定了新的镜像地址,包括{局点信息}/{组织名称}/{镜像名称}:{版本名称},请根据实际填写。建议使用完整的swr地址,因为后续的调试和注册需要使用。 “-f ”指定了Dockerfile的文件名,根据实际填写。 最后的“ . ”指定了构建的上下文是当前目录,根据实际填写。 docker build -t swr.cn-north-4.myhuaweicloud.com/sdk-test/pytorch_1_8:v1 -f Dockerfile . 图5 构建成功
-
使用场景和构建流程说明 用户可以使用ModelArts提供的基础镜像或第三方的镜像来编写Dockerfile,在E CS 服务器上构建出完全适合自己的镜像。然后将镜像进行注册,用以创建新的开发环境,满足自己的业务需求。 本案例将基于ModelArts提供的PyTorch基础镜像,安装pytorch 1.8、ffmpeg 3和gcc 8,构建一个面向AI开发的新环境。 主要流程如下图所示: 图1 构建与调测镜像流程 本案例适用于华为云-北京四Region。
-
Notebook自定义镜像规范 制作自定义镜像时,Base镜像需满足如下规范: 基于昇腾、Dockerhub官网等官方开源的镜像制作,开源镜像需要满足如下操作系统约束: x86:Ubuntu18.04、Ubuntu20.04 ARM:Euler2.8.3、Euler2.10.7 Ubuntu20.04.6可能有兼容性问题,请优先使用低于该版本的操作系统。 不满足以上镜像规范,所制作的镜像使用可能会出现故障,请用户检查镜像规范,并参考Notebook自定义镜像故障基础排查自行排查,如未解决请联系华为技术工程师协助解决。
-
准备Docker机器并配置环境信息 准备一台具有Docker功能的机器,如果没有,建议申请一台弹性云服务器并购买弹性公网IP,并在准备好的机器上安装必要的软件。 ModelArts提供了ubuntu系统的脚本,方便安装docker。 本地Linux机器的操作等同ECS服务器上的操作,请参考本案例。 登录ECS控制台,购买弹性云服务器,镜像选择“公共镜像”,推荐使用ubuntu18.04的镜像;系统盘设置为100GiB。具体操作请参考购买并登录弹性云服务器。 图2 选择镜像和磁盘 购买弹性公网IP并绑定到弹性云服务器。具体操作请参考配置网络。 配置VM环境。 在docker机器中,使用如下命令下载安装脚本。 wget https://cnnorth4-modelarts-sdk.obs.cn-north-4.myhuaweicloud.com/modelarts/custom-image-build/install_on_ubuntu1804.sh 当前仅支持ubuntu系统的脚本。 在docker机器中并执行如下命令,即可完成环境配置。 bash install_on_ubuntu1804.sh 图3 配置成功 source /etc/profile 安装脚本依次执行了如下任务: 安装docker。 如果挂载了GPU,则会安装nvidia-docker2,用以将GPU挂载到docker容器中。
-
在Notebook中制作自定义镜像 首先配置鉴权信息,指定profile,根据提示输入账号、用户名及密码。鉴权更多信息请查看配置登录信息。 ma-cli configure --auth PWD -P xxx 执行env|grep -i CURRENT_IMAGE_NAME命令查询当前实例所使用的镜像。 制作新镜像。 获取上步查询的基础镜像的SWR地址。 CURRENT_IMAGE_NAME=swr.cn-north-4.myhuaweicloud.com/atelier/mindspore_1_7_0:mindspore_1.7.0-cann_5.1.0-py_3.7-euler_2.8.3-aarch64-d910-20220906 加载镜像构建模板。 执行ma-cli image get-template命令查询镜像模板。 然后执行ma-cli image add-template命令将镜像模板加载到指定文件夹下,默认路径为当前命令所在的路径。例如:加载upgrade_ascend_mindspore_1.8.1_and_cann_5.1.RC2镜像构建模板。 ma-cli image add-template upgrade_ascend_mindspore_1.8.1_and_cann_5.1.RC2 修改Dockerfile。 本例的Dockerfile将基于MindSpore基础镜像mindspore1.7.0-cann5.1.0-py3.7-euler2.8.3,升级到cann 5.1.RC2和MindSpore1.8.1,构建一个面向AI任务的镜像。 加载镜像模板后,Dockerfile文件自动加载,在“.ma/upgrade_ascend_mindspore_1.8.1_and_cann_5.1.RC2”路径下,双击Dockerfile文件打开,内容参考如下,根据实际需求修改: #The following uses Mindspore-1.7 as an example, which can be replaced with the current notebook image.(此处为举例,请以Notebook使用的镜像为准) FROM swr.cn-north-4.myhuaweicloud.com/atelier/mindspore_1_7_0:mindspore_1.7.0-cann_5.1.0-py_3.7-euler_2.8.3-aarch64-d910-20220715093657-9446c6a ARG CANN=Ascend-cann-toolkit_5.1.RC2_linux-aarch64.run # Set proxy to download internet resources(不同局点的Notebook代理可能不同,此处为举例,请以Notebook所在局点的实际代理为准,可以在JupyterLab的Terminal中,通过env|grep -i proxy命令查看) ENV HTTP_PROXY=http://proxy.modelarts.com:80 \ http_proxy=http://proxy.modelarts.com:80 \ HTTPS_PROXY=http://proxy.modelarts.com:80 \ https_proxy=http://proxy.modelarts.com:80 USER root # Download CANN-5.1.RC2 and install CANN package, which is a dependency package for mindspore-1.8.1. # For details about the mapping between Mindpore and CANN and the download address of CANN, see the official website of Mindpore. RUN wget https://ascend-repo.obs.cn-east-2.myhuaweicloud.com/CANN/CANN%205.1.RC2/${CANN} -P /tmp && \ chmod +x /tmp/${CANN} && \ sh -x /tmp/${CANN} --quiet --full && \ rm -f /tmp/${CANN} ENV PYTHONPATH=/usr/local/Ascend/tfplugin/latest/python/site-packages:/usr/local/Ascend/ascend-toolkit/latest/python/site-packages:/usr/local/Ascend/ascend-toolkit/latest/opp/op_impl/built-in/ai_core/tbe:/usr/local/seccomponent/lib USER ma-user # Update mindspore version in "MindSpore" conda env by using pip. RUN source /home/ma-user/anaconda3/bin/activate MindSpore && \ pip install https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.8.1/MindSpore/ascend/aarch64/mindspore_ascend-1.8.1-cp37-cp37m-linux_aarch64.whl --upgrade && \ echo "successfully install mindspore 1.8.1" ## [Optional] Uncomment to set default conda env #ENV DEFAULT_CONDA_ENV_NAME=/home/ma-user/anaconda3/envs/MindSpore 如果使用的基础镜像不是ModelArts提供的公共镜像,需要在Dockerfile文件中添加ModelArts指定的用户和用户组,具体可参考Dockerfile文件(基础镜像为非ModelArts提供)。 构建镜像 使用ma-cli image build命令从Dockerfile构建出一个新镜像。命令更多信息请参考镜像构建命令。 ma-cli image build .ma/upgrade_ascend_mindspore_1.8.1_and_cann_5.1.RC2/Dockerfile -swr notebook-test/my_image:0.0.1 -P XXX 其中“.ma/upgrade_ascend_mindspore_1.8.1_and_cann_5.1.RC2/Dockerfile”为Dockerfile文件所在路径,“notebook-test/my_image:0.0.1”为构建的新镜像的SWR路径。“XXX”为鉴权时指定的profile。
-
注册新镜像 构建完成后,将新镜像注册到ModelArts镜像管理服务中,进而能够在ModelArts中使用该镜像。 有两种方式来注册镜像。 方式一:使用ma-cli image register命令来注册镜像。注册命令会返回注册好的镜像信息,包括镜像id,name等,如下图所示。该命令的更多信息可参考镜像构建命令。 ma-cli image register --swr-path=swr.cn-north-4.myhuaweicloud.com/notebook-test/my_image:0.0.1 -a AARCH64 -rs ASCEND -P XXX -a指定该镜像支持ARM架构,-rs指定镜像支持ASCEND芯片,“XXX”为鉴权时指定的profile。 图1 注册镜像 方式二:在ModelArts Console上注册镜像 登录ModelArts控制台,在左侧导航栏选择“镜像管理”,进入镜像管理页面。 单击“注册镜像”。请将完整的SWR地址复制到这里即可,或单击可直接从SWR选择自有镜像进行注册。 “架构”和“类型”根据实际情况选择,与镜像源保持一致。
更多精彩内容
CDN加速
GaussDB
文字转换成语音
免费的服务器
如何创建网站
域名网站购买
私有云桌面
云主机哪个好
域名怎么备案
手机云电脑
SSL证书申请
云点播服务器
免费OCR是什么
电脑云桌面
域名备案怎么弄
语音转文字
文字图片识别
云桌面是什么
网址安全检测
网站建设搭建
国外CDN加速
SSL免费证书申请
短信批量发送
图片OCR识别
云数据库MySQL
个人域名购买
录音转文字
扫描图片识别文字
OCR图片识别
行驶证识别
虚拟电话号码
电话呼叫中心软件
怎么制作一个网站
Email注册网站
华为VNC
图像文字识别
企业网站制作
个人网站搭建
华为云计算
免费租用云托管
云桌面云服务器
ocr文字识别免费版
HTTPS证书申请
图片文字识别转换
国外域名注册商
使用免费虚拟主机
云电脑主机多少钱
鲲鹏云手机
短信验证码平台
OCR图片文字识别
SSL证书是什么
申请企业邮箱步骤
免费的企业用邮箱
云免流搭建教程
域名价格