Docker学习笔记(二):Docker的常用命令

一、基本命令

1、docker version

作用:查看docker的版本信息

实例:

2、docker info

作用:显示 Docker 系统信息,包括镜像和容器数。

实例:

3、docker --help

作用:docker的帮助命令

实例:

二、镜像命令

1、docker images

作用:列出本地镜像

参数:

  • -a :列出本地所有的镜像(含中间映像层,默认情况下,过滤掉中间映像层)

  • --digests :显示镜像的摘要信息

  • -f :显示满足条件的镜像

  • --format :指定返回值的模板文件

  • --no-trunc :显示完整的镜像信息

  • -q :只显示镜像ID。

实例:

docker images -a(列出本地所有的镜像)

docker images centos(列出本地镜像中REPOSITORY为centos的镜像列表)

2、docker search [OPTIONS] 镜像名字

作用:从Docker Hub查找镜像

参数:

  • --automated :只列出 automated build类型的镜像;

  • --no-trunc :显示完整的镜像描述;

  • -f <过滤条件>:列出收藏数不小于指定值的镜像。

实例:

docker search --no-trunc centos(显示centos完整的镜像描述)

3、docker pull 镜像名称

作用:下载镜像

实例:

docker pull nginx

4、docker rmi 镜像名称或 ID

作用:删除指定的镜像

实例:

根据名称删除

根据ID删除

三、容器命令

在演示容器命令之前,需要有镜像,所以应该先pull一个镜像,以centos为例。

1、docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

作用:新建并启动容器

参数:

  • --name="容器新名字": 为容器指定一个名称;
  • -d: 后台运行容器,并返回容器 ID,也即启动守护式容器;
  • -i:以交互模式运行容器,通常与 -t 同时使用;
  • -t:为容器重新分配一个伪输入终端,通常与 -i 同时使用;
  • -P(大写): 随机端口映射;
  • -p: 指定端口映射,有以下四种格式:ip:hostPort:containerPort、ip::containerPort、hostPort:containerPort、containerPort
  • /bin/bash:放在镜像名后的是命令,这里我们希望有个交互式 Shell,因此用的是 /bin/bash。

实例:

docker run -it centos  /bin/bash(启动交互式容器,以交互模式启动一个容器,在容器内执行 /bin/bash 命令)

2、docker ps [OPTIONS]

作用:列出当前所有正在运行的容器

参数:

  • -a :列出当前所有正在运行的容器+历史上运行过的
  • -l :显示最近创建的容器。
  • -n:显示最近n个创建的容器。
  • -q :静默模式,只显示容器编号。
  • --no-trunc :不截断输出。

实例:

docker ps  -n 5(显示最近5个创建的容器)

3、退出容器

(1)exit:容器停止退出

(2)Ctrl + P + Q:容器挂起退出

4、docker start 容器 ID 或者容器名

作用:启动一个已经停止的容器

实例:

docker start 81b3fb371aa6

注意:如果使用容器名,则必须只有一个,如果同时有两个或者多个centos被停止,此时如何使用docker start centos,则会出错。

5、docker restart 容器 ID 或者容器名

作用:重启容器

实例:

docker restart b78a5b873a0f

6、docker stop 容器 ID 或者容器名

作用:停止容器

实例:

docker stop b78a5b873a0f

7、docker kill 容器 ID 或者容器名

作用:强制停止容器

8、docker rm 容器 ID

作用:删除已停止的容器

一次性删除多个容器:

  • docker rm -f $(docker ps -a -q)
  • docker ps -a -q | xargs docker rm

9、docker run -d 容器名

作用:启动守护式容器

说明:使用镜像 centos:latest 以后台模式启动一个容器(docker run -d centos),然后 docker ps -a 进行查看, 会发现容器已经退出。如果Docker 容器后台运行,就必须有一个前台进程。当容器运行的命令如果不是那些一直挂起的命令(比如运行top,tail),就是会自动退出的。这个是 Docker 的机制问题,比如web 容器,以 nginx 为例,正常情况下,我们配置启动服务只需要启动响应的 service 即可。例如service nginx start,但是这样做,nginx 为后台进程模式运行,就导致Docker 前台没有运行的应用,这样的容器后台启动后,会立即自杀因为它觉得自己没事可做了。所以,最佳的解决方案是,将要运行的程序以前台进程的形式运行。

10、docker log -f -t --tail 容器 ID

作用:查看容器日志

参数:

  • -t 是加入时间戳
  • -f 跟随最新的日志打印
  • --tail 数字显示最后多少条

实例:

11、docker top 容器ID

作用:查看容器内运行的进程

实例:

12、docker inspect 容器ID

作用:查看容器内部细节

实例:

13、其他命令

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

  • docker exec -it 容器 ID bashShell
  • 重新进入docker attach 容器 ID

上述两个的区别:

  • attach 直接进入容器启动命令的终端,不会启动新的进程
  • exec 是在容器中打开新的终端,并且可以启动新的进程

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

作用:从容器内拷贝文件到主机上

实例:

 

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值