对docker18.06版本,如果想要在docker容器内使用gpu,需要安装nvidia-docker。
对于docker版本大于19,需要安装nvidia-container-runtime,在创建容器时配置参数即可使用gpu。
pull and run docker
创建本地挂载目录
mkdir pytorch1.4
下载docker镜像1.4-cuda10.1-cudnn7-devel
PS:devel版本镜像的才有nvcc等bin文件
docker pull pytorch/pytorch:1.4-cuda10.1-cudnn7-devel
查看本地已有的镜像
docker images
创建容器
-it表示交互式运行容器;
–name指定容器名;
–shm-size设置的是共享内存大小,根据需要设置,如果不设置的话,默认64M,训练深度学习模型的时候dataloader会报错提示共享内存不足;
-p是端口映射(主机端口:容器端口),-v是地址映射(主机文件夹:容器文件夹,注意必须用绝对路径);
镜像的RESPOSITORY:TAG;
进入容器后启动bash
docker19以下版本
sudo nvidia-docker run -it --name pytorch1.4 --shm-size=“15g” -p 8080:22 -v /home/ecust/txx/docker/container/pytorch1.4:/workspace pytorch/pytorch:1.4-cuda10.1-cudnn7-devel /bin/bash
docker19以上版本
docker run -it --gpus all --name pytorch1.4 --shm-size=“15g” -p 8080:22 -v /home/ecust/txx/docker/container/pytorch1.4:/workspace pytorch/pytorch:1.4-cuda10.1-cudnn7-devel /bin/bash
使用1.5不开启交互:
docker run -it --gpus all --name pytorch_1.5_container --shm-size=“32g” -v /opt/dataanalyse:/workspace pytorch/pytorch:1.5-cuda10.1-cudnn7-devel /bin/bash
查看已经创建的容器
docker ps -a
查看运行中的容器
docker ps
启动容器
docker start “container id or name”
进入容器
docker attach “container id or name”
退出并停止容器
exit
退出并继续运行容器
Ctrl+P+Q
运行代码使用:
nohup python train.py > myout.file 2>&1 &
停止容器
docker stop “container id or name”
删除容器
docker rm “container id or name”
启动docker容器:
docker run -it -d --name 名称 image_name
docker容器复制主机的路径到容器中:
docker cp /opt/huawei/dataanalyse/FoodRecognize 4a48540c5e2e:/workspace