文章目录
- 前言
- 一、nvidia-docker安装方法
- 1、nvidia-docker安装
- 2、重启动ssh
- 二、构建镜像
- 1、构建镜像
- docker拉取构建
- 本地镜像加载构建
- 2、容器转镜像
前言
docker容器相关操作,包含镜像、容器、删除,特别是容器如何直接连接方法,可类似物理机使用。
一、nvidia-docker安装方法
1、nvidia-docker安装
复制粘贴即可:
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list
sudo apt-get update && sudo apt-get install -y nvidia-container-toolkit
2、重启动ssh
sudo service docker restart
以上来源:https://blog.csdn.net/u011573853/article/details/108832736
二、构建镜像
1、构建镜像
docker拉取构建
docker拉取网络的安装命令:
docker pull lbjcom/cuda10.1-pytorch3.6-warp-ctc-apex
本地镜像加载构建
docker load -i /data/sdv3/docker_first.tar加载镜像路径
2、容器转镜像
docker commit 8dfe4fa5b202 base_docker:latest容器地址 新镜像名
```## 3、镜像打包
```
docker save -o /data/sdv3/docker_first.tar base_docker:latest镜像存储地址 打包镜像名称
```
## 4、删除镜像
删除镜像:docker rmi 镜像_id# 三、构建容器## 1、容器构建
使用镜像创建容器命令:
```
docker run --gpus all -itd -p 9991:6661 --ipc=host --name docker_name -v /data:/home lbjcom/cuda10.1-pytorch3.6-warp-ctc-apex:latest /bin/bash
```
说明:--guus all 使用所有显卡 9991是物理机端口 6661是容器端口 --ipc=host使用物理机 -v路径映射 物理路径:容器路径## 2、启动镜像
```
docker exec -it 220beb95291e bin/bash镜像名
```
## 3、删除容器删除容器:docker rm 容器_id# 四、docker直连(ssh -p)## 1、docker更改密码
执行以下命令更改密码,如下:
```
passwd
```
## 2、物理机操作方法一
假设构建容器:docker run --gpus all -itd -p 9991:22 --ipc=host --name docker_name -v /home:/home lbjcom/cuda10.1-pytorch3.6-warp-ctc-apex:latest /bin/bash22是物理机端口号直接给了容器,我们需要使用以下命令修改:```
vim /etc/ssh/sshd_config
```
将该内容更改如下:
```
#PermitRootLogin prohibit-password 打开
改成如下:
PermitRootLogin yes```
如下图:
随后在物理机上使用命令:```
ssh -p 9991 root@191.164.0.96
```
如下图:

输入更改的密码。随后就能将docker当成类似物理机使用了。假设构建容器:docker run --gpus all -itd -p 9991:6661 --ipc=host --name docker_name -v /home:/home lbjcom/cuda10.1-pytorch3.6-warp-ctc-apex:latest /bin/bash你需要将vim /etc/ssh/sshd_config将port改成6661## 3、容器操作方法二
直接给出命令如下:
```
usr/sbin/sshd -p 9991 &
```