nvidia-docker 环境拉取和contrainer容器管理
本文介绍ubuntu上已有nvidia-docker环境,启用管理docker和containter的方法。
安装nvidia-docker需要连接外网,具体安装细节参考nvidia-docker github的安装指导。
-
查看镜像文件
sudo nvidia-docker images -
查看container文件
sudo nvidia-docker ps -a -
从docker hub 下载对应的images
sudo nvidia-docker pull nvidia/cuda:9.0-cudnn7-devel-ubuntu16.04
sudo nvidia-docker pull nvidia/cuda:10.0-cudnn7-devel-ubuntu18.04
根据自己的需要替换cuda,和cudnn的版本,不需要自己安装cuda和cudnn -
挂载本地数据,启动docker,生成container
sudo nvidia-docker run -it -p 20111:22 --name=“username” -v /study-temp/data:/root/data 2a1a442c2ae2 /bin/bash
注释:##2a1a442c2ae2 表示image的id 20111 端口表示container中映射宿主机的22端口。如果挂载失败,可以更改数字20111。挂载宿主机上的/study-temp/data目录到container的/root/data目录。username为container的名称 -
执行container
sudo nvidia-docker start conID
sudo nvidia-docker exec -it d7957f082d61 /bin/bash
conID = d7957f082d61 表示container 的id -
新docker中anaconda3环境变量配置
vim ~/.bashrc
在末尾添加:export PATH="/root/data/ubuntu16.04/anaconda3/bin:$PATH"
source ~/.bashrc
容器管理:
docker ps : 列出正在运行的容器
docker ps -a: 列出正在运行的和已经停止的容器
docker rm 容器id:删除指定容器
docker rm $(docker ps -a -q):删除所有已经停止的容器
docker stop 容器id:停止运行指定容器
docker start 容器id:启动指定容器
docker exec -it 容器名称 /bin/bash 进入到正在运行的容器中
镜像管理
docker images :列出宿主机存在的所有镜像
docker rmi 镜像id:删除指定镜像
docker rmi -f 镜像id:强制删除指定镜像
本地远程docker服务器,需要建立ssh服务,Docker容器开启ssh
1.apt-get update
2.安装ssh服务器
apt install openssh-server
3.修改配置文件vim /etc/ssh/sshd_config,更改内容为:# PermitRootLogin prohibit-password.
PermitRootLogin yes
4.重启
/etc/init.d/ssh restart
如果sftp连接不上,检查ssh的运行装:
service ssh status 如果未启动,启动ssh:service ssh start;服务器root设置密码passwd:xxx