zoukankan      html  css  js  c++  java
  • Docker笔记--操作容器命令

    Docker笔记--操作容器命令

    创建容器

    • docker [container] create-- 创建容器,使用docker [container] create命令新建的容器处于停止状态,可以使用docker[container] start命令来启动它。

    启动容器

    • docker [container] start--启动一个已经创建了的容器
      • -d后台运行
    • docker ps--查看一个运行中的容器

    创建并启动容器

    • docker [container] run --创建并启动一个容器
      • -t选项让Docker分配一个伪终端(pseudo-tty)并绑定到容器的标准输入上
      • -i则让容器的标准输入保持打开。更多的命令选项可以通过man docker-run命令来查看。

    可以按Ctrl+d或输入exit命令来退出容器

    退出容器

    • ocker container wait CONTAINER [CONTAINER...]--等待容器退出

    查看容器输出

    • docker [container] logs
      • -details:打印详细信息;
      • -f, -follow:持续保持输出;
      • -since string:输出从某个时间开始的日志;
      • -tail string:输出最近的若干日志;
      • -t, -timestamps:显示时间戳信息;
      • -until string:输出某个时间之前的日志。

    停止容器

    • docker [container] pause CONTAINER [CONTAINER...]--暂停docker容器,处于paused状态的容器,可以使用docker [container] unpause CONTAINER[CONTAINER...]命令来恢复到运行状态。
    • docker [container] stop--该命令会首先向容器发送SIGTERM信号,等待一段超时时间后(默认为10秒),再发送SIGKILL信号来终止容器,此时,执行docker container prune命令,会自动清除掉所有处于停止状态的容器。
    • docker [container] kill--直接发送SIGKILL信号来强行终止容器
    • docker [container] restart--将一个运行态的容器先终止,然后再重新启动

    当Docker容器中指定的应用终结时,容器也会自动终止

    处于终止状态的容器,可以通过docker [container] start命令来重新启动

    进入容器

    在使用-d参数时,容器启动后会进入后台,用户无法看到容器中的信息,也无法进行操作。这个时候如果需要进入容器进行操作,推荐使用官方的attach或exec命令。

    • docker [container] attach--进入容器,注意多个窗口同时进入容器时,所有窗口会同步显示,只要有一个窗口发生了阻塞,则所有窗口都会阻塞

      • --detach-keys[=[]]:指定退出attach模式的快捷键序列,默认是CTRL-pCTRL-q;
      • -no-stdin=true|false:是否关闭标准输入,默认是保持打开;
      • --sig-proxy=true|false:是否代理收到的系统信号给应用进程,默认为true。
    • docker [container] exec--可以在运行中的容器中直接执行命令

      • -d, --detach:在容器中后台执行命令;
      • --detach-keys="":指定将容器切回后台的按键;
      • -e, --env=[]:指定环境变量列表;
      • -i, --interactive=true|false:打开标准输入接受用户输入命令,默认值为false;
      • --privileged=true|false:是否给执行命令以高权限,默认值为false;
      • -t, --tty=true|false:分配伪终端,默认值为false;
      • -u, --user="":执行命令的用户名或ID。

    通过指定-it参数来保持标准输入打开,并且分配一个伪终端。通过exec命令对容器执行操作是最为推荐的方式。

    删除容器

    • docker [container] rm--删除处于终止或退出状态的容器
      • -f, --force=false:是否强行终止并删除一个运行中的容器;
      • -l, --link=false:删除容器的连接,但保留容器;
      • -v, --volumes=false:删除容器挂载的数据卷。
    • docker rm $(docker ps -a -q)--删除所有处于终止或退出状态的容器

    导入和导出容器

    • docker [container] export--导出一个容器,不管是运行还是终止状态,可以通过-o制定tar文件或者>重定向到tar文件

    • docker [container] import [-c|--change[=[]]] [-m [=MESSAGE]] FILE |URL| - [RESPONSITORY[:TAG]]--导入一个tar文件,使其变为镜像

      • -c, --change=[]选项在导入的同时执行对容器进行修改的Dockerfile指令

    查看容器

    • docker [container] inspect--查看某容器的具体信息,会以json格式返回包括容器Id、创建时间、路径、状态、镜像、配置等在内的各项信息
    • docker [container] top--查看容器内进程,包括PID、用户、时间、命令等
    • docker [container] stats--显示容器CPU、内存、存储、网络等使用情况的统计信息
      • -a, -all:输出所有容器统计信息,默认仅在运行中;
      • -format string:格式化输出信息;
      • -no-stream:不持续输出,默认会自动更新持续实时结果;
      • -no-trunc:不截断输出信息。

    容器其他命令

    • docker [container] cp--复制文件
    • docker [container] port--查看容器端口映射
  • 相关阅读:
    Google Map API基本概念(转载)很好的例子
    Sql Exception Handling & Throw Exception
    幸福人生讲座(十):五伦中哪一伦最重要?
    Delete Database Log
    杨澜语录
    余世雄 如何提升职场“执行力”
    红楼女梦
    假如我真的看透了
    余世维 有效沟通
    习惯修养
  • 原文地址:https://www.cnblogs.com/Kingram/p/13476229.html
Copyright © 2011-2022 走看看