Docker常用命令如下
(1)显示docker的版本信息
docker version
(2)显示docker的系统信息
docker info
(3)帮助命令
docker -help
(4)查看主机上所有的docker镜像
docker images
效果图:
#标题解释
REPOSITORY TAG IMAGE ID CREATED SIZE
镜像的仓库源 镜像的标签 镜像的id 镜像的创建时间 镜像的内存大小
#选项及解释
-a和--all(列出所有的镜像)
-q和--quiet(显示镜像的id)
例:
dockers images -a(dockers images --all)
dockers images -q(dockers images --quiet)
(5)从docker仓库中搜索相应的docker镜像
docker search 镜像名
例:
docker search mysql
效果图:
#选项及解释
-f和--filter(表示过滤条件)
例:
dockers search mysql -f=STARS=3000(搜索使用量【STARS】在3000以上的镜像)
(6)下载镜像
#如果不加上版本号,即下载该镜像的最新版本
docker pull 镜像名称:版本号
例:
下载mysql镜像
docker pull mysql:8.0
效果图:
下载过程:
下载完成:
注意:
只有Docker仓库里有相应版本的镜像才能下载,否则不能下载
docker pull mysql等价docker pull docker.io/library/mysql:latest
(7)删除镜像
#选项及解释
#-f参数表示全部删掉,能通过镜像名称或镜像id来删掉镜像,可通过加空格实现删除多个镜像
docker rmi -f 镜像名称或镜像id
(8)删除所有镜像
#选项及解释
-a表示查出所有镜像
-q表示查出镜像的id
-aq参数表示查出所有镜像id,$()能把括号里的表达式的运算结果当做参数,下面这条语句的意思是删除所有的镜像
docker rmi -f $(docker images -aq)
(9)新建容器并启动
#选项及解释
--name="name"参数用于给容器取名字 ,用来区分容器
-d表示容器在后台运行
-it表示使用交互方式运行容器,能进入容器内部进行内容的查看
-p表示指定容器的端口,写法为-p主机端口:容器端口
-P表示随机指定端口
--rm表示退出容器后会立刻删除容器
docker run [选项] 镜像名称
(10)启动并进入容器(我这里使用的是centos7的镜像,需要下载的可以用docker pull centos:7这条命令进行镜像的下载)
例:
docker run -it centos:7 /bin/bash
#/bin/bash是centos的控制台位置
效果图:
(11)退出容器
exit
(12)把容器切到后台运行
#后台启动容器
docker run -d 容器名称
注意!!!docker容器使用后台运行,就必须需要一个前台进程,docker发现没有对外提供服务的应用,就会自动停止该容器
ctrl+p+q把正在运行的容器切到后台运行
(13)查看当前在运行的容器
docker ps
(14)查看目前正在运行的容器和历史运行过的容器
docker ps -a
(15)显示最近创建的容器
docker ps -n
(16)显示容器的编号
docker ps -q
(17)删除容器,不能删除正在运行的容器,可以在rm后面加-f进行强制删除
docker rm 容器id
(18)删除所有容器
#选项及解释
-a表示查出所有容器
-q表示查出容器id
-aq参数表示查出所有容器id,$()能把括号里的表达式的运算结果当做参数,下面这条语句的意思是删除所有的容器
docker rm -f $(docker ps -aq)
xargs的作用是把左边命令的输出作为参数传输给docker rm这个命令
docker ps -a -q|xargs docker rm
(19)启动容器
docker start 容器id
(20)重启容器
docker restart 容器id
(21)停止当前正在运行的容器
docker stop 容器id
(22)强制停止当前正在运行的容器
docker kill 容器id
(24)查看全部日志
#选项及解释
-f表示实时打印
-t显示时间戳
docker logs -t -f 容器id
(25)查看前10条日志
#选项及解释
-f表示实时打印
-t显示时间戳
--tail显示前面指定条数的日志
docker logs -f -t --tail 10 容器id
(26)查看容器进程信息
docker top 容器id
效果图:
#标题解释
UID(用户id)PID(进程id)PPID(父进程id)
(27)查容器的元数据(容器的所有信息)
docker inspect 容器id
(28)查看容器的历史构建记录
docker history 镜像id或镜像名称
例:
镜像id:
镜像名称:
(29)进入当前正在运行的容器,并开启一个新的终端,可以在里面操作
docker exec -it 容器id bashshell
例:
#/bin/bash是固有写法,因为docker后台必须运行一个进程,否则容器就会退出,在这里表示启动容器后启动bash
docker exec -it 容器id /bin/bash
(30)进入容器正在执行的终端,不会启动新的进程
docker attach 容器id
(31)把容器内的文件拷贝出来到主机上
docker cp 容器id:容器内文件所在路径 目的路径
(32)提交容器变成镜像
#命令和git原理类似
docker commit -m="提交的镜像的描述信息" -a="作者" 容器id 目标镜像名称:[TAG]
(33)给镜像进行改名字和改版本号
docker tag 镜像id或镜像名称 镜像名称:[tag]
(34)登录DockerHub
docker login -u 用户名
(35)把镜像推送到DockerHub上
docker push 用户名/镜像名:[tag]
其他:
Docker的官方命令文档位置:https://docs.docker.com/engine/reference/commandline/docker/