一、Docker 客户端

docker 客户端非常简单,可以直接输入 docker 命令来查看到 Docker 客户端的所有命令选项。

  1. docker

image.png
可以通过命令 docker command —help 更深入的了解指定的 Docker 命令使用方法。
例如我们要查看 docker cp 指令的具体使用方法:

  1. docker cp

image.png

二、容器使用

1、获取镜像

如下图所示,本地没有debian镜像,可以使用docker pull获取debian的镜像

  1. docker pull debian

image.png

2、容器启停/进出

1、启动容器

以下命令使用debian镜像启动一个容器,参数为以命令行模式进入该容器:

  1. docker run -it debian /bin/bash

image.png
参数说明:

  • -i: 交互式操作。
  • -t: 终端。
  • debian: debian镜像。
  • /bin/bash:放在镜像名后的是命令,这里我们希望有个交互式 Shell,因此用的是 /bin/bash。

退出容器终端,exit或使用Ctrl +d快捷键
image.png

2、启动已停止的容器

  1. docker start e3ffd92cef9b

image.png

3、后台运行容器

在大部分的场景下,我们希望 docker 的服务是在后台运行的,我们可以过 -d 指定容器的运行模式。

  1. docker run -itd --name debian_test debian /bin/bash

image.png
参数说明:

  • -d 后台运行容器,启动后默认不会自动进入容器
  • —name 启动容器修改容器名字

    4、停止容器

    停止容器:

    1. docker stop e3ffd92cef9b

    image.png
    当然也可以通过docker restart将已停止的容器重启启动

    1. docker restart e3ffd92cef9b

    image.png

    5、进入重启

    通过 docerk exec 命令进入到容器内部

    1. docker exec -it e3ffd92cef9b /bin/bash

    image.png
    使用docker exec 命令进入到容器内再退出不会导致容器停止,如果使用docker attach就会有此问题哦~

    3、导出,导入和删除容器

    1、导出容器

    使用docker export可以导出容器

    1. docker export e3ffd92cef9b > debian_test.tar

    image.png
    这样将导出容器快照到本地文件

    2、导入容器

    可以使用 docker import 从容器快照文件中再导入为镜像

    1. cat debian_test.tar | docker import - test/debian:v1

    image.png

    3、删除容器

    删除容器使用 docker rm -f 命令

    1. docker rm -f e3ffd92cef9b

    image.png

    三、运行一个WEB应用

    载入一个web应用程序的镜像

    1. docker pull training/webapp

    运行查看这个容器

    1. docker run -d -P training/webapp python app.py

    参数说明:

  • -P: 将容器内部使用的网络端口随机映射到我们使用的主机上

    image.png

    容器内部的 5000 端口映射到我们本地主机的 32769 端口上
    这时我们可以通过浏览器访问WEB应用
    image.png

    查看容器网络端口的快捷方式

    通过 docker ps 命令可以查看到容器的端口映射,docker 还提供了另一个快捷方式 docker port,使用 docker port 可以查看指定 (ID 或者名字)容器的某个确定端口映射到宿主机的端口号。

    1. docker port 3442722a9b5d

    image.png

    查看 WEB 应用程序日志

    docker logs [ID或者名字] 可以查看容器内部的标准输出。

    1. docker logs -f 3442722a9b5d

    参数说明:

  • -f:docker logs 像使用 tail -f 一样来输出容器内部的标准输出。

image.png

查看WEB应用程序容器的进程

使用 docker top 来查看容器内部运行的进程

  1. docker top 3442722a9b5d

image.png

检查 WEB 应用程序

使用 docker inspect 来查看 Docker 的底层信息。它会返回一个 JSON 文件记录着 Docker 容器的配置和状态信息

  1. docker inspect 3442722a9b5d

image.png

移除容器

  1. docker rm -f 3442722a9b5d