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)

原文地址:https://www.cnblogs.com/wholj/p/10396516.html

时间: 2024-08-30 11:12:51

docker基础知识 -- 操作容器(二)的相关文章

docker 基础 之操作容器

启动容器 启动容器有两种方式,一种是基于镜像新建一个容器并启动,另外一个是将在终止状态(stopped)的容器重新启动. 新建并启动,所需要的命令主要为 docker run.例如,下面的命令输出一个 “Hello World”,之后终止容器. $ sudo docker run ubuntu:14.04 /bin/echo 'Hello world' Hello world 下面的命令则启动一个 bash 终端,允许用户进行交互. $ sudo docker run -t -i ubuntu:

docker基础知识 -- 操作镜像

实验环境 CentOS 7.5 安装并启动docker yum install -y docker systemctl start docker 镜像 安装镜像 docker pull [OPTIONS] NAME[:TAG|@DIGEST] 注:对于Docker镜像来说,如果不显式地指定TAG,则默认会选择 latest标签,即下载仓库中最新版本的镜像. 从Docker Hub的CentOS仓库下载一个最新的CentOS操作系统的镜像. [[email protected] ~]# docke

Docker 基础知识-入门篇

1. Docker简介和KVM区别 1.1 docker的三大理念 构建 运输 运行 ps:有点类似于java代码,一次构建到处运行 1.2 docker结构 相关说明:image: 和虚拟机的镜像类似container: 用镜像创建的实例repository: 类似于yum仓库docker client: 命令行输入的docker命令docker server: 启动的docker进程 1.3 docker和kvm的区别 1.虚拟机需要hypervisor这个中间层来进行支持,上面跑的每一个虚

Docker03 Docker基础知识、Docker实战

1 Docker基础知识 1.1 什么是Docker Docker是一个可以装应用的容器,就像杯子可以装水.书包可以装书一样:docker官网 Docker是Docker公司开发的,并开源到GitHub上; Docker是跨平台的,支持windows.linux.Macos 1.2 Docker思想 1.2.1 集装箱 需要运行的程序放到一个集装箱中 1.2.2 标准化 运输方式 存储方式 API接口 1.2.3 隔离 1.3 Docker解决了什么问题 1.3.1 解决运行环境不一致问题  解

C#基础知识篇(二)-----------C#笔记

1.关系运算符(比较运算符) 1.关系运算符有哪些? >,< ==,!= >=,<= 2.关系运算符的作用? 用于比较两个事物之间的关系. 3.什么叫关系表达式? 由关系运算符连接起来的式子叫关系表达式. 注意:所有的关系表达式最终都能计算成一个bool类型的值. 2.逻辑运算符 1.逻辑表达式有哪些? 逻辑与:&& ,逻辑或:||  ,逻辑非:!(又叫取反) 2.逻辑运算 语法:表达式1 逻辑运算符  表达式2 逻辑运算符连接的两个表达式,要最终能求解成一个boo

docker学习---docker基础知识

目录 docker的基础 1.安装docker 2.使用镜像 3.镜像迁移|导入和导出 4.docker Hub介绍 5.搭建私有镜像仓库 5.1.docker开源的镜像分发工具--docker Registry 5.2.harbor部署 6.使用容器 7.容器导出和导入 8.数据卷 9.网络访问 10.dockerfile 10.1.基础指令 10.2.控制指令 10.3.引入指令 10.3.执行指令 10.4.配置指令 10.5.特殊用法 docker的基础 1.安装docker yum i

c语言基础知识整理(二)

C语言的基础知识 对C语言的基础认识: 1.C语言编写的程序称为源程序,又称为编译单位. 2.C语言书写格式是自由的,每行可以写多个语句,可以写多行. 3.一个C语言程序有且只有一个main函数,是程序运行的起点. 4.每个C语言程序写完后,都是先编译,后链接,最后运行.(.c---à.obj---à.exe)这个过程中注意.c和.obj文件时无法运行的,只有.exe文件才可以运行. (程序编辑-程序编译-程序连接-程序运行) 标识符: 1.标识符: 合法的要求是由字母,数字,下划线组成.有其它

Kali Linux渗透基础知识整理(二)漏洞扫描

Kali Linux渗透基础知识整理系列文章回顾 漏洞扫描 网络流量 Nmap Hping3 Nessus whatweb DirBuster joomscan WPScan 网络流量 网络流量就是网络上传输的数据量. TCP协议 TCP是因特网中的传输层协议,使用三次握手协议建立连接.当主动方发出SYN连接请求后,等待对方回答SYN+ACK ,并最终对对方的 SYN 执行 ACK 确认.这种建立连接的方法可以防止产生错误的连接,TCP使用的流量控制协议是可变大小的滑动窗口协议. 连接建立 TC

docker 基础知识分享ppt

给团队做的docker基础分享ppt, 见下面的附件. https://files.cnblogs.com/files/harrychinese/docker_intro.pptx 原文地址:https://www.cnblogs.com/harrychinese/p/docker_ppt.html