Docker 常用命令

🎈1. 帮助启动类命令

启动 docker

systemctl start docker

停止 docker

systemctl stop docker

重启 docker

systemctl restart docker

查看 docker 状态

systemctl status docker

开机启动

systemctl enable docker

查看 docker 概要信息

docker info

查看 docker 总体帮助文档

docker --help

查看 docker 命令帮助文档

docker 具体命令 --help

🎈2. 镜像命令

列出本地主机上的镜像

docker images

options 说明

docker images -a     //列出本地所有的镜像
docker images -q     //只显示镜像ID

搜索镜像名称

docker search [options] 镜像名称

options 说明

docker search --limit 5 redis     //只列出5个redis镜像,不加的话默认25个

下载镜像

docker pull 镜像名称[:TAG]    // 没有TAG就是最新版,docker pull 镜像名称:latest

查看镜像/容器/数据卷所占的空间

docker system df

删除镜像

docker rmi -f 镜像ID        //删除单个镜像
docker rmi -f 镜像名1:TAG 镜像名2:TAG   //删除多个镜像
docker rmi -f $(docker images -qa)    // 删除全部

🎈3. 容器命令

容器是运行在镜像的基础之上的,因此,首先需要下载一个镜像,以 ubuntu 为例

docker pull ubuntu
//docker pull centos

新建并启动容器

docker run [options] image [command][arg...]

options 说明:

--name="容器新名字"  为容器指定一个名称
-d:后台运行容器并返回容器ID,即启动守护式容器(后台运行)
-i: 以交互模式运行容器,通常与 -t 同时使用
-t: 为容器重新分配一个伪输入终端,通常与-i同时使用,即启动交互式容器(前台有伪终端,等待交互)
-P: 随机端口映射,大写 P
-p: 指定端口映射,小写 p

启动前台交互式容器

docker run -it ubuntu /bin/bash
参数说明:
-i:交互式操作
-t: 终端
ubuntu: ubuntu 镜像
/bin/bash: 放在镜像后的命令

在这里插入图片描述
如果想要退出,直接输入 exit 命令
在这里插入图片描述
列出当前所有正在运行的容器

docker ps [options]

options 说明

-a: 列出当前所有正在运行的容器和历史运行过的
-l: 显示最近创建的容器
-n: 显示最近n个创建的容器
-q: 静默模式,只显示容器编号

退出容器

//两种退出方式
//1.run 运行容器,exit退出,容器停止
exit        
//2.run运行容器,crtl+p+q退出,容器不停止
ctrl+p+q 

启动已停止运行的容器

docker start 容器ID或容器名

重启容器

docker restart 容器ID或者容器名

停止容器

docker stop 容器ID或容器名

强制停止容器

docker kill 容器ID或容器名

删除已停止的容器

docker rm 容器ID
// 一次性删除多个容器实例
docker rm -f $(docker ps -a -q)
docker ps -a -q | xargs docker rm

启动守护式容器(后台服务器)

docker run -d 容器名

以启动镜像 ubuntu 为例,以后台模式启动一个容器

docker run -d ubuntu

之后,使用命令docker ps -a 进行查看,会发现容器已经退出了。
在这里插入图片描述
由于 docker 的机制问题,docker 容器后台运行,就必须有一个前台进程。 容器运行的命令如果不是那些一直挂起的命令(比如运行 top, tail),就会自动退出。

以 nginx 为例,通常情况下,我们配置启动服务只需要启动响应的 service 即可,例如 service nginx start,但是这样做 nginx 为后台进程模式运行,就导致 docker 前台没有运行的应用,这样的容器后台启动后,会觉得无事可做而立即“自杀”。因此,最佳解决方法就是,将要运行的程序以前台进程的形式运行。最常见的就是命令行模式,表示还有交互操作不中断

查看容器日志

docker logs 容器ID

查看容器内运行的进程

docker top 容器ID

查看容器内部细节

docker inspect 容器ID

进入正在运行的容器并以命令行交互

docker exec -it 容器ID bashShell

在这里插入图片描述
执行 exit 后,重新进入 docker,但是这次使用如下命令

docker attach 容器ID

在这里插入图片描述
可看到,在执行 exit 命令之后,再次查看运行的容器,发现此时没有正在运行的容器了!

这是因为,attach 直接进入容器启动命令终端,不会启动新的进程,用 exit 退出,会导致容器的停止。然而,exec 是在容器中打开新的终端,并且可以启动新的进程,用 exit 退出,不会导致容器的停止。推荐使用 docker exec 命令,这样退出容器终端时,不会导致容器的停止!

从容器内拷贝文件到主机

docker cp 容器ID:容器内路径 目的主机路径

导入和导出容器

export 导出容器的内容留作为一个tar归档文件[对应import命令]
import 从tar包中的内容创建一个新的文件系统再导入为镜像[对应export]

案例演示:将容器名为 ubuntu 导出,内容留为一个归档文件,之后删除 docker 中的容器 ubuntu。再将归档文件导入到 docker 容器,创建 ubuntu 镜像实例。

导出容器:
在这里插入图片描述
导入容器
在这里插入图片描述

🎈4. Docker 常用命令可视化

对于一些常用的命令,docker 官方也作了总结,如下图所示
在这里插入图片描述

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ReadThroughLife

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值