提示:视频链接:https://www.bilibili.com/video/BV1og4y1q7M4
Docker常用命令
帮助命令
docker version # 显示docker版本信息
docker info # 显示docker的系统信息,包括镜像和容器数量
docker --help # 帮助命令
官方帮助文档地址:https://docs.docker.com/engine/reference/commandline
一、镜像命令
docker images
查看所有本地主机上的镜像列表
docker search
搜索镜像,想要拉取某个镜像时,可以先使用docker search 镜像名,获取镜像的版本,拉取自己需要的镜像包
docker pull
拉取某个镜像时使用,要学会使用docker pull --help 查看命令的使用,指定版本下载时,你的版本号一定要存在官方文档中,否则会拉取失败,所以就会使用到docker search 或者在官网搜索你要的镜像版本是否存在
docker rmi
删除镜像
#1.删除指定的镜像id
docker rmi -f 镜像id
#2.删除多个镜像id
docker rmi -f 镜像id 镜像id 镜像id
#3.删除全部的镜像id
docker rmi -f $(docker images -aq)
二、容器命令
我们有了镜像才可以创建容器,我们下载一个centos镜像来测试学习:
docker pull centos
docker run
运行镜像启动容器
docker run [可选参数] image
#参数说明
--name="名字" 指定容器名字
-d 后台方式运行
(使用这个选项时,这里会有一个坑:使用后台运行,就必须要有个前台进程,如 运行一个nginx,容器启动后,发现自己没有提供服务,就会立刻停止,所以使用docker ps 查看不到该容器在运行)
-it 使用交互方式运行,进入容器查看内容
-p 指定容器的端口
-p ip:主机端口:容器端口 (配置主机端口映射到容器端口)
-p 主机端口:容器端口 (常用)
-p 容器端口 (不走外部)
容器端口
-P 随机指定端口(大写的P)
退出容器
eixt # 退出后容器销毁,通过docker ps 查不到;重新启动需要使用docker start(但后台方式运行的容器则仅退出)。
Ctrl + D # 快捷键 退出后容器销毁,通过docker ps 查不到. 重新启动需要使用docker start
Ctrl + P + Q # 快捷键 退出后容器不销毁,通过docker ps 可以查到. 重新启动需要使用docker attach
docker ps
列出所有运行的容器
docker ps
# 列出当前正在运行的容器
-a # 列出所有容器的运行记录
-n=? # 显示最近创建的n个容器
-q # 只显示容器的编号
docker rm
删除容器
docker rm 容器id #删除指定的容器,不能删除正在运行的容器,强制删除使用 rm -f,或者先停止容器再删除
docker rm -f $(docker ps -aq) #删除所有的容器
docker ps -a -q|xargs docker rm #删除所有的容器
启动和停止容器的操作
docker start 容器id #启动容器
docker restart 容器id #重启容器
docker stop 容器id #停止当前运行的容器
docker kill 容器id #强制停止当前容器
docker logs
查看日志
[root@office-UNION-Testing-05 ~]# docker logs --help
Usage: docker logs [OPTIONS] CONTAINER
Fetch the logs of a container
Options:
--details Show extra details provided to logs
-f, --follow Follow log output
--since string Show logs since timestamp (e.g. 2013-01-02T13:23:37Z) or relative (e.g. 42m for 42 minutes)
-n, --tail string Number of lines to show from the end of the logs (default "all")
-t, --timestamps Show timestamps
--until string Show logs before a timestamp (e.g. 2013-01-02T13:23:37Z) or relative (e.g. 42m for 42 minutes)
常用:
docker logs -tf 容器id
docker logs --tail number 容器id #number为要显示的日志条数
测试:
#编写shell脚本循环执行,使centos容器保持运行状态
docker run -d centos /bin/sh -c "while true;do echo hi;sleep 5;done"
docker ps 找到容器id
docker logs -tf --tail 10 容器id 就可以查看到日志
查看容器中进程信息
docker top 容器id
docker inspect 查看原数据
docker inspect 容器id
进入当前正在运行的容器
docker exec -it 容器id # 进入容器后开启一个新的终端,可以在里面操作,使用-it时,则和我们平常操作console界面类似。而且也不会像attach方式因为退出,导致整个容器退出;如果只使用-t参数,则可以看到一个console窗口,但是执行命令会发现由于没有获得stdin
的输出,无法看到命令执行情况
docker attach 容器id # 进入容器正在执行的终端,不会启动新的进程,如果exit,会导致容器的停止
拷贝
#拷贝容器的文件到主机中
ocker cp 容器id:容器内路径 目的主机路径
#拷贝宿主机的文件到容器中
docker cp 目的主机路径 容器id:容器内路径
三、命令总结
相关文章:
Docker入门级学习(一):Docker概述
Docker入门级学习(二):安装Docker
Docker入门级学习(四):Docker练习:部署一个项目
Docker入门级学习(五):Docker镜像原理
Docker入门级学习(六):Docker数据卷
Docker入门级学习(七):Dockerfile
Docker入门级学习(八):Docker网络