• docker容器


    实验环境

    CentOS 7.5

    容器

    容器是镜像的运行实例。不同的是,镜像是静态的只读文件,而容器带有运行时需要的可写文件层;同时,容器中的应用进程处于运行状态。

    进入容器

    可使用以下命令进入容器:

    attach命令

    docker container attach [OPTIONS] CONTAINER

    [root@kvm ~]# docker container attach --help
    Usage:  docker container attach [OPTIONS] CONTAINER
    Attach to a running container
    Options:
          --detach-keys string   指定退出attach模式的快捷键
          --help                 帮助信息
          --no-stdin             是否关闭标准输入,默认是保持打开;--no-stdin=true|false
          --sig-proxy            是否代理收到的系统信号给应用进程,默认为true;--sig-proxy=true|false
    

    注意:

    • attach命令只能进入处于运行状态的容器中;
    • attach命令直接进入容器并启动命令的终端,不会启动新的进程;
    • attach命令进入容器后,如果直接从这个stdin中exit(ctrl+d),会导致容器的停止;不建议使用此命令操作容器。

    exec命令

    docker container exec [OPTIONS] CONTAINER COMMAND [ARG...]

    [root@kvm ~]# docker container exec --help
    Usage:  docker container exec [OPTIONS] CONTAINER COMMAND [ARG...]
    Run a command in a running container
    Options:
      -d, --detach               在容器中后台执行命令;
          --detach-keys string   指定将容器切回后台的按键;
      -e, --env list             指定环境变量列表;
          --help                 帮助信息
      -i, --interactive          打开标准输入接受用户输入命令,默认值为false;--interactive=true|false;
          --privileged           是否给执行命令以高权限,默认值为false;--privileged=true|false;
      -t, --tty                  分配伪终端,默认值为false;--tty=true|false;
      -u, --user string          执行命令的用户名或ID;--user=""。
    

    注意:

    • 同attach命令,exec命令也只能进入处于运行状态的容器中;
    • 不同attach命令,exec命令是在容器中打开新的终端,并且可以启动新的进程;
    • exec命令进入容器后,如果直接从这个stdin中exit(ctrl+d),不会导致容器的停止;
    • 使用exec命令的同时使用 -it 选项时,会打开一个跟我们平时使用的TTY一样的终端。

    删除容器

    docker [container] rm [OPTIONS] CONTAINER [CONTAINER...]

    [root@kvm ~]# docker container rm --help
    Usage:  docker container rm [OPTIONS] CONTAINER [CONTAINER...]
    Remove one or more containers
    Options:
      -f, --force     是够强制终止并删除一个运行中的容器;
          --help      帮助信息;
      -l, --link      删除容器的链接,但是保留容器;
      -v, --volumes   删除容器挂载的数据卷。
    

    默认情况下,docker rm命令只能删除已经处于停止或退出状态的容器,并不能删除还处于运行状态的容器,除非使用-f参数强制删除。

    删除所有处于同一状态的容器

    可以使用docker ps -a状态定位容器并对其进行过滤:创建,重新启动,运行,暂停或退出。要查看已退出容器的列表,可使用-f参数根据状态进行过滤。当确认要删除这些容器时,使用-q参数将容器ID传递给docker rm命令;eg:

    • 列出所有处于停止状态的容器列表
      docker ps -a -f status=exited
    • 删除所有处于停止状态的容器
      docker rm $(docker ps -a -f status=exited -q)
      批量删除其他状态的容器方法同理。

    删除所有容器

    • 删除所有容器首先需要停止所有容器
      docker stop $(docker ps -a -q)
    • 删除所有容器
      docker rm $(docker ps -a -q)
  • 相关阅读:
    jQuery index()方法使用
    杂记
    Tp框架代码杂记
    tp U方法的{:U('Index/index',array('id'=>$vo[id]))}
    mb_substr=0,5,'utf-8'
    Thinkphp 超长sql语句编写
    http_build_query()生成url字符串
    html_entity_decode 将数据库里的 | 互联网金融 “野蛮生长” 的休止符| &rdquo转义成”“
    ThinkPHP 左右定界符
    python中unicode和str的组合
  • 原文地址:https://www.cnblogs.com/wholj/p/10396516.html
Copyright © 2020-2023  润新知