AI开发平台MODELARTS-SparseDrive模型基于ModelArts Lite Server适配PyTorch NPU训练指导:步骤二:启动容器

时间:2025-12-15 17:54:42

步骤二:启动容器

  1. 获取基础镜像。建议使用官方提供的镜像部署推理服务。镜像地址{image_url}参见表2 获取软件和镜像
    docker pull {image_url}
  2. 启动容器镜像。启动前请先按照参数说明修改${}中的参数。可以根据实际需要增加修改参数。
    export work_dir="自定义挂载的工作目录"
    export container_work_dir="自定义挂载到容器内的工作目录"
    export container_name="自定义容器名称"
    export image_name="镜像名称或ID"
    # --device的挂载请按照机器实际需要使用的npu数量来规划 下面给出的是16卡机器的例子
    docker run -itd \
       -u root \
       --device=/dev/davinci0 \
       --device=/dev/davinci1 \
       --device=/dev/davinci2 \
       --device=/dev/davinci3 \
       --device=/dev/davinci4 \
       --device=/dev/davinci5 \
       --device=/dev/davinci6 \
       --device=/dev/davinci7 \
       --device=/dev/davinci8 \
       --device=/dev/davinci9 \
       --device=/dev/davinci10 \
       --device=/dev/davinci11 \
       --device=/dev/davinci12 \
       --device=/dev/davinci13 \
       --device=/dev/davinci14 \
       --device=/dev/davinci15 \
       --device=/dev/davinci_manager \
       --device=/dev/devmm_svm \
       --device=/dev/hisi_hdc \
       -v /usr/local/sbin/npu-smi:/usr/local/sbin/npu-smi \
       -v /usr/local/dcmi:/usr/local/dcmi \
       -v /etc/ascend_install.info:/etc/ascend_install.info \
       -v /sys/fs/cgroup:/sys/fs/cgroup:ro \
       -v /usr/local/Ascend/driver:/usr/local/Ascend/driver \
       -v /usr/bin/hccn_tool:/usr/bin/hccn_tool \
       -v /etc/hccn.conf:/etc/hccn.conf \
       --shm-size 1024g \
       --net=host \
       -v ${work_dir}:${container_work_dir} \
       --name ${container_name} \
       ${image_name} \
       /bin/bash

    参数说明:

    • --name ${container_name} 容器名称,进入容器时会用到,此处可以自己定义一个容器名称,例如SparseDrive_train。
    • --device=/dev/davinci0 :挂载对应卡到容器,请按照机器实际需要使用到的NPU数量来配置,上面给出的是使用16卡NPU训练的例子。
    • -v ${work_dir}:${container_work_dir}:代表需要在容器中挂载宿主机的目录。work_dir为宿主机中工作目录,目录下可存放项目所需代码、数据等文件,建议将AscendCloud-ACD-6.5.905-xxx.zip等所需文件放在work_dir中,便于容器内访问。container_work_dir为要挂载到的容器中的目录。为方便两个地址可以相同。
  3. 进入容器。需要将${container_name}替换为实际的容器名称。
    docker exec -it ${container_name} bash
support.huaweicloud.com/bestpractice-modelarts/modelarts_sparse_train_5905.html