拉取镜像
docker pull 镜像名
docker pull 镜像名:tag
手动加载镜像
docker load -i 镜像保存文件位置
查看所有已拉取镜像
docker images
运行镜像
docker run 镜像名
docker run 镜像名:Tag
# -it 表示 与容器进行交互式启动 -d 表示可后台运行容器 (守护式运行)
#--name 给要运行的容器起的名字 /bin/bash 交互
docker run -it -d --name 要取的别名 镜像名:Tag /bin/bash
删除镜像
#删除一个
docker rmi -f 镜像名/镜像ID
#删除多个 其镜像ID或镜像用用空格隔开即可
docker rmi -f 镜像名/镜像ID 镜像名/镜像ID 镜像名/镜像ID
docker rmi -f 镜像名/镜像ID 镜像名/镜像ID 镜像名/镜像ID
#删除全部镜像 -a 意思为显示全部, -q 意思为只显示ID
docker rmi -f $(docker images -aq)
# 强制删除
docker image rm {镜像名称/镜像ID}
保存镜像
docker save {镜像名/镜像ID} -o {镜像保存在哪个位置与名字}
镜像标签
docker tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG]
docker tag 源镜像名:TAG 想要生成新的镜像名:新的TAG
# 如果省略TAG 则会为镜像默认打上latest TAG
查看运行的容器列表
#查看正在运行容器列表
docker ps
#查看所有容器 -----包含正在运行 和已停止的
docker ps -a
停止容器
docker stop 容器名/容器ID
#停止全部容器
docker stop $(docker ps -a | awk '{ print $1}' | tail -n +2)
删除容器
#删除一个容器
docker rm -f 容器名/容器ID
#删除多个容器 空格隔开要删除的容器名或容器ID
docker rm -f 容器名/容器ID 容器名/容器ID 容器名/容器ID
#删除全部容器
docker rm -f $(docker ps -aq)
docker rm $(docker ps -a | awk '{ print $1}' | tail -n +2)
进入容器
docker exec -it 容器名/容器ID /bin/bash
# 有些容器没有/bin/bash
docker exec -it 容器名/容器ID /bin/sh
文件传输
#docker cp 容器ID/名称:文件路径 要拷贝到外部的路径 | 要拷贝到外部的路径 容器ID/名称:文件路径 #从容器内拷出
docker cp 容器ID/名称: 容器内路径 容器外路径
#从外部拷贝文件到容器内
docker cp 容器外路径 容器ID/名称: 容器内路径
删除无用的容器或镜像
# 停止异常容器
docker stop $(docker ps -a | grep "Exited" | awk '{print $1 }')
# 删除异常停止的容器
docker rm $(docker ps -a | grep "Exited" | awk '{print $1 }')
# 删除名称或标签为none的镜像
docker rmi $(docker images | grep "none" | awk '{print $3}')