docker安装命令

1、更新yum源(新服务执行,老服务不需要关心啦!!!)

yum update -y
yum install epel-release -y
yum clear all
yum list

2、安装docker

yum install -y yum-utils
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum install -y docker-ce

#启停
systemctl start docker 
systemctl stop docker
systemctl status docker
systemctl restart docker

#开机自动启动docker
systemctl enable docker

#检查安装结果
docker info

#检查安装版本
docker -v

3、常用镜像操作

# 查看所有镜像、容器的详细大小
docker system df -v

#查看镜像
docker images

#搜索镜像
docker search image_name

#下载镜像
docker pull image_name

#上传镜像   --tag 镜像版本号
docker push image_name:tag

#创建容器
# -p --端口映射(6080:web版vnc,浏览器直接访问 5900:客户端访问)
# -d --后台运行 
# –name=container_name --设容器名
# imagename:tag --镜像
# cpu版本
docker run -it --shm-size 8g --name container_name -p 5900:5900 -p 22:22 -d image_name:tag
# gpu版本
docker run -it --shm-size 8g --gpus all --name container_name -p 5900:5900 -p 22:22 -d image_name:tag
# eg(创建深度学习ubuntu容器)
# docker run -it --gpus all --name deepLearning_ubuntu18 -p 5900:5900 -p 22:22 -d gotoeasy/ubuntu-desktop:latest

#删除容器
# image_id 镜像id
# 使用镜像ID删除时会先删除所有指向该镜像的标签,再删除该镜像文件本身
docker rmi image_id 
# eg: docker rmi 1a89db715923
# 镜像存在依赖于它的容器时,不允许删除,需要强制删除
docker rmi -f image_name:tag
# eg: docker rmi -f yangyu/ubuntu18.04_for_deeplearning:v1.0

#修改镜像标签(重命名)
# 功能更接近于为指定镜像添加快捷
docker tag image_id new_image_name: new_tag
# eg: docker cc53add7e80b kasmweb2/desktop:develop-rolling2
# 或者
docker tag old_image_name: old_tag new_image_name: new_tag
# eg: docker tag kasmweb/desktop:develop-rolling  kasmweb2/desktop:develop-rolling2
# 镜像ID一模一样,说明是同一个镜像,只是别名不同而已,可以任意删除其中一个别名(标签)
docker rmi old_tag new_image_name: new_tag
# 或
docker rmi new_tag new_image_name: new_tag
# 但是绝对不能用image_id 删除即: docker rmi image_id 

@Dockerfile创建镜像
docker build -t image_namedockerfilepath

#到处镜像
# 保存镜像包
# filename.tar 镜像包名
# path/ 存放目录
# image_name镜像名
# path/filename.tar必须都是小写
docker save -o path/filename.tar image_name
docker save image_name> path/filename.tar
#eg:docker save -o E:\dockerimage\ubuntu18.04_for_deeplearning.tar yangyu/ubuntu18.04_for_deeplearning

# 导入镜像包
# 载入过程不能镜像名,镜像名即为filename
docker load --input filename.tar
docker load < filename.tar

4、创建容器操作

#只看运行中的容器
docker ps

#查所有容器
docker ps -a

#停止容器
docker stop 容器名
docker stop 容器id

#删除容器
docker rm 容器名
docker rm 容器id

#进入容器
docker exec -it 容器名 /bin/bash
docker exec -it 容器id /bin/bash

#制作镜像
# imagename必须是全小写
 docker commit container_name image_name:tag
 docker commit container_id image_name:tag
 # eg:docker commit 0b66c3cb1aaf yangyu/ubuntu18.04_for_deeplearning:v1.0