前言
一、安装docker
二、拉取docker镜像
三、启动docker容器
四、进入docker环境
1. 命令行方式
2. ssh连接
已知问题
前言
本环境是为了大家能够更加快速的搭建AscendC算子开发环境,3步实现从0到运行sample样例。支持ssh直连容器开发环境。
预装软件版本信息如下:
软件名 版本
Ascend-cann-toolkit 8.1.RC1_linux-x86_64社区版
一、安装docker
这里我使用的测试环境是win11下wsl2的ubuntu22.04.5环境。安装docker的命令如下:
sudo apt update && sudo apt install docker.io -y
此处有遇到win10用户使用wsl2安装docker后,无法启动docker的问题。需要在微软商店搜索并安装Docker Desktop软件。首 次启动docker desktop 软件可能会出现首页加载不出来的问题,请耐心等待其加载完毕,这可能需要10-30分钟。
二、拉取docker镜像
执行下面的命令,如果普通用户有权限操作docker也可以不提权执行。
sudo docker pull swr.cn-north-4.myhuaweicloud.com/toolsmanhehe/cann_op_develop:8.1.RC1
另有cann8.0.0版本镜像备用,但是需要手动配置ssh登录。
sudo docker pull swr.cn-north-4.myhuaweicloud.com/toolsmanhehe/cann_op_develop:8.0.0
三、启动docker容器
这里我们需要使用docker run命令创建容器,参考命令如下,可根据实际情况调整。此命令只在创建容器时需要使用,后续使用容器过程中不再需要执行。
注意:由于宿主机的ssh可能使用了22端口,因此需要通过-p参数转发容器的22端口至其他可用端口
docker run --name cannopdevelop -it -d --shm-size=10g \
--privileged=true \
-v /home:/home \
-v /tmp:/tmp \
-v /usr/share/zoneinfo/Asia/Shanghai:/etc/localtime \
-e http_proxy=$http_proxy \
-e https_proxy=$https_proxy \
-e "PATH=/usr/local/python3.10.2/bin:$PATH" \
-p 8822:22 \
swr.cn-north-4.myhuaweicloud.com/toolsmanhehe/cann_op_develop:8.1.RC1
四、进入docker环境
1. 命令行方式
在终端中执行即可。
sudo docker exec -it cannopdevelop bash
2. ssh连接
首先使用ifconfig或其他等价工具查询运行容器的环境的ip地址,这里是全零侦听的,因此只要是能ping通当前环境的ip都是可以的。
使用ssh root@ip -p 8822连接。密码:toolsmanhehe,可以在进入容器后通过passwd root命令修改。
使用vscode连接方式见下图:

已知问题
无法通过密钥显示ssh免密登录
环境中默认运行了密钥登录和root登录(虽然只有root用户)。我测试了很多次,同一组密钥,我的ubuntu环境下可以正常通过私钥登录,但是容器内不行。望各位大佬赐教。