zoukankan      html  css  js  c++  java
  • Docker 容器操作

    版权所有,未经许可,禁止转载


    章节


    本章我们将详细探讨如何使用容器。

    docker top

    使用此命令,显示容器中的进程。

    典型用法

    docker top CONTAINER 
    

    常用选项

    • CONTAINER - 容器ID,docker ps可以查询

    执行结果

    打印指定容器中的进程

    例子

    首先使用docker ps查询运行中的容器(ID),然后使用docker top CONTAINER显示指定容器中的进程:

    [root@qikegu ~]# docker ps
    CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
    2084a03f4c46        busybox             "sh"                3 hours ago         Up 3 hours                              distracted_ride
    [root@qikegu ~]# docker top 2084a03f4c46
    UID                 PID                 PPID                C                   STIME               TTY                 TIME                CMD
    root                6302                6286                0                   13:04               pts/0               00:00:00            sh
    

    docker start/stop/restart

    此命令用于启动/停止/重启容器。

    典型用法

    docker start/stop/restart CONTAINER 
    

    常用选项

    • CONTAINER - 容器ID,docker ps可以查询

    执行结果

    启动/停止/重启容器。

    例子

    前面我们运行了一个busybox容器,现在我们让它停止运行,然后使用docker ps检查停止运行是否成功。

    [root@qikegu ~]# docker stop 2084a03f4c46
    2084a03f4c46
    [root@qikegu ~]# docker ps
    CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
    

    docker rm

    一个容器即使已经退出,仍然会存在,可以使用docker ps -a命令查看。命令docker rm删除容器。

    典型用法

    docker rm CONTAINER 
    

    常用选项

    • CONTAINER - 容器ID,docker ps可以查询

    执行结果

    删除指定容器,输出该容器ID。

    例子

    使用docker ps -a列出所有容器,包括退出运行的,然后使用docker rm b6f8c654159a删除指定容器,最后docker ps -a确认指定容器是否被删除。

    [root@qikegu ~]# docker ps -a
    CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS                      PORTS               NAMES
    0f191fd7d469        busybox             "sh"                     5 hours ago         Exited (0) 5 hours ago                          hopeful_lalande
    8ae26063af0b        hello-world         "/hello"                 6 hours ago         Exited (0) 6 hours ago                          nostalgic_jepsen
    4e80cdf55081        busybox             "sh"                     6 hours ago         Exited (0) 6 hours ago                          heuristic_euler
    2190b6af6286        hello-world         "/hello"                 6 hours ago         Exited (0) 6 hours ago                          pensive_ganguly
    cd5d988325ff        jenkins             "/bin/tini -- /usr/l…"   45 hours ago        Exited (130) 45 hours ago                       awesome_heyrovsky
    053eaa5cc8e5        hello-world         "/hello"                 46 hours ago        Exited (0) 46 hours ago                         gifted_booth
    b6f8c654159a        2bcb04bdb83f        "/bin/bash"              6 weeks ago         Exited (127) 6 weeks ago                        competent_khorana
    [root@qikegu ~]# docker rm b6f8c654159a
    b6f8c654159a
    [root@qikegu ~]# docker ps -a
    CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS                      PORTS               NAMES
    0f191fd7d469        busybox             "sh"                     5 hours ago         Exited (0) 5 hours ago                          hopeful_lalande
    8ae26063af0b        hello-world         "/hello"                 6 hours ago         Exited (0) 6 hours ago                          nostalgic_jepsen
    4e80cdf55081        busybox             "sh"                     6 hours ago         Exited (0) 6 hours ago                          heuristic_euler
    2190b6af6286        hello-world         "/hello"                 6 hours ago         Exited (0) 6 hours ago                          pensive_ganguly
    cd5d988325ff        jenkins             "/bin/tini -- /usr/l…"   45 hours ago        Exited (130) 45 hours ago                       awesome_heyrovsky
    053eaa5cc8e5        hello-world         "/hello"                 46 hours ago        Exited (0) 46 hours ago                         gifted_booth
    

    docker stats

    此命令输出容器的运行统计信息。

    典型用法

    docker stats CONTAINER 
    

    常用选项

    • CONTAINER - 容器ID,docker ps可以查询

    执行结果

    显示容器的CPU和内存利用率等运行信息。

    例子

    显示容器运行时的cpu、内存等信息。

    [root@qikegu ~]# docker stats e7407526d69c
    

    输出

    CONTAINER ID        NAME                CPU %               MEM USAGE / LIMIT   MEM %               NET I/O             BLOCK I/O           PIDS
    e7407526d69c        vigorous_cohen      0.00%               56KiB / 991.2MiB    0.01%               656B / 0B           0B / 0B             1
    

    docker attach

    此命令用于附加到容器中正在运行的进程。

    典型用法

    docker attach CONTAINER 
    

    常用选项

    • CONTAINER - 容器ID,docker ps可以查询

    执行结果

    附加到容器中正在运行的进程。

    例子

    进入到容器(busybox),附加到正在运行的sh进程。Ctrl + P + Q 退出。

    [root@qikegu ~]# docker attach e7407526d69c
    / #
    / #
    

    docker pause

    此命令用于暂停正在运行的容器。

    典型用法

    docker pause CONTAINER 
    

    常用选项

    • CONTAINER - 容器ID,docker ps可以查询

    执行结果

    暂停正在运行的容器,输出该容器ID。

    例子

    docker pause af82cc24d7cc暂停容器,docker ps -a查看,暂停成功。

    [root@qikegu ~]# docker pause af82cc24d7cc
    af82cc24d7cc
    [root@qikegu ~]# docker ps -a
    CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS                       PORTS               NAMES
    af82cc24d7cc        busybox             "sh"                     2 minutes ago       Up About a minute (Paused)                       infallible_jennings
    ...
    

    docker unpause

    此命令启动暂停的容器。

    典型用法

    docker unpause CONTAINER 
    

    常用选项

    • CONTAINER - 容器ID,docker ps可以查询

    执行结果

    启动暂停的容器,输出该容器ID。

    例子

    docker unpause af82cc24d7cc启动容器,docker ps -a查看,启动成功。

    [root@qikegu ~]# docker unpause af82cc24d7cc
    af82cc24d7cc
    [root@qikegu ~]# docker ps -a
    CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS                      PORTS               NAMES
    af82cc24d7cc        busybox             "sh"                     6 minutes ago       Up 6 minutes                                    infallible_jennings
    ...
    

    docker kill

    杀死正在运行的容器。

    典型用法

    docker kill CONTAINER 
    

    常用选项

    • CONTAINER - 容器ID,docker ps可以查询

    执行结果

    杀死正在运行的容器,,输出该容器ID。

    例子

    杀死正在运行的容器af82cc24d7cc。

    [root@qikegu ~]# docker kill af82cc24d7cc
    af82cc24d7cc
    

    教程中提到的都是命令典型用法,其他用法,可用docker help command查看,例如:docker help rmi

    容器生命周期

    下图解释了Docker容器的整个生命周期。

    Docker Container Life cycle

    • 最开始,Docker容器将处于创建完成状态。
    • 接下来,当使用Docker run命令启动容器时,Docker容器进入运行状态。
    • docker kill命令用于杀死正在运行的Docker容器。
    • docker pause命令用于暂停正在运行的Docker容器。
    • docker unpause命令用于启动暂停的Docker容器。
    • docker stop命令用于退出正在运行的Docker容器。
  • 相关阅读:
    MySQL按照汉字的拼音排序
    js prepend() 和append()区别
    php获取当月天数及当月第一天及最后一天、上月第一天及最后一天实现方法
    (转)对《30个提高Web程序执行效率的好经验》的理解
    打印数组
    php创建文件并写入信息
    关于iOS地图定位中点击设置->隐私->定位服务 闪退问题
    解决WAMP搭建PHP环境后后局域网其他机器无法访问的问题
    用php怎么改文件名
    JSP HTTP 状态码
  • 原文地址:https://www.cnblogs.com/jinbuqi/p/11161554.html
Copyright © 2011-2022 走看看