0. 启动Docker
systemctl start docker # 启动docker,或者使用 service docker start
systemctl stop docker # 关闭docker
systemctl restart docker # 重启docker
systemctl status docker # 查看docker状态
1. Docker拉取镜像
docker search ImageName # 搜索镜像
docker pull ImageName # 拉取镜像
docker rmi ImageName # 删除镜像
docker rm ContainerName # 删除容器(少个i)
示例
docker pull hangvane/cuda-conda-desktop:ubuntu16.04
Docker Hub里有多种镜像源:Docker Hub主页
2. Docker查看镜像
docker images
3. Docker新建容器
docker run --name ContainerName -it ImageName /bin/bash
参数说明:-it = -i -t
- -t 表示在新容器内指定一个终端(terminal)
- -i 表示容器为可交互的(interactive)
- ContainerID指定容器名,ImageName表示镜像名
- /bash/bin表示在容器内启动bash shell
示例
docker run --name XinxinLi -it --gpu='device=0, 1' dzw001/cuda11.1-cudnn8-python3.6-pytorch1.8.1-ubuntu18.04 /bin/bash
# 中间插个 --gpu 指定特定显卡
4. Docker进入容器
docker start ContainerID # 启动docker容器,使用restart则是重启
docker exec -it ContainerID /bin/bash # 进入容器的交互界面
5. Docker退出并关闭容器
exit # 或者使用Ctrl + D
docker stop ContainerID
6. Docker查看容器
docker ps # 查看正在运行的容器
docker container ls # 查看正在运行的容器(list)
docker ps -a # 查看所有容器(all)
7. Docker与宿主机的文件互传
docker cp 宿主机路径 容器ID:容器里的路径 # 本地宿主机往docker容器里传文件
docker cp 容器ID:容器里的路径 宿主机路径# 与上面正好相反
示例
docker cp /home/ubuntu/XinxinLi/downloads/sewer-ml.zip 7df165187730:/home/xinxinli/
# 本地物理机往容器ID为7df165187730的目录/home/xinxinli/传递文件sewer-ml.zip
8. 导入/导出镜像
docker export 容器ID>>文件名.tar
cat 文件名.tar | docker import - 镜像用户/镜像名:镜像版本