如何获取正在运行的 Docker 容器的 ID 或名称

DockerBeginner
立即练习

简介

Docker 容器已成为现代软件开发和部署的重要组成部分。在本教程中,我们将探讨如何获取正在运行的 Docker 容器的 ID 或名称,这是有效管理基于 Docker 的应用程序并对其进行故障排除的一项基本技能。

理解 Docker 容器

Docker 是一个广受欢迎的容器化平台,它允许开发者以一致且可重复的方式打包和部署应用程序。容器是轻量级、独立且自包含的单元,它们封装了应用程序、其依赖项以及必要的运行时环境。

什么是 Docker 容器?

Docker 容器是一种将应用程序及其依赖项打包成单个可移植单元的方式,该单元可以轻松地部署并在任何安装了 Docker 的系统上运行。容器提供了一个一致且隔离的环境,确保应用程序无论在何种底层基础设施上运行,都能以相同的方式运行。

Docker 容器的优点

  • 可移植性:容器可以在不同环境(如开发、测试和生产环境)之间轻松移动,无需进行复杂的配置更改。
  • 可扩展性:容器可以轻松地进行扩展或缩减,以满足应用程序不断变化的需求。
  • 高效性:容器轻量级,比传统虚拟机使用的资源更少,运行起来更高效。
  • 一致性:容器确保应用程序及其依赖项始终以相同的方式部署,降低了出现不一致和错误的风险。

Docker 容器架构

Docker 容器基于 Docker 镜像构建,镜像是一个只读模板,包含应用程序代码、依赖项和必要的运行时环境。创建 Docker 容器时,会在镜像之上添加一个读写层,使容器能够存储数据并对环境进行更改。

graph TD A[Docker 镜像] --> B[Docker 容器] B --> C[读写层]

使用 Docker 容器

要使用 Docker 容器,你的系统需要安装 Docker。安装好 Docker 后,你可以使用 docker 命令行工具来管理容器,包括创建、启动、停止和删除容器。

## 拉取 Docker 镜像
docker pull ubuntu:22.04

## 创建一个新的 Docker 容器
docker run -it ubuntu:22.04 /bin/bash

## 列出正在运行的 Docker 容器
docker ps

通过 ID 识别正在运行的容器

识别正在运行的 Docker 容器的一种方法是通过其唯一的容器 ID。容器 ID 是一个长的十六进制字符串,用于唯一标识容器。

按 ID 列出正在运行的容器

你可以使用 docker ps 命令列出所有正在运行的容器及其 ID。此命令将显示一个表格,其中包含每个正在运行的容器的信息,包括容器 ID、用于创建容器的镜像、正在执行的命令、容器创建的时间、容器的状态以及容器的名称。

docker ps

这将输出一个类似于以下内容的表格:

容器 ID 镜像 命令 创建时间 状态 端口 名称
1234567890ab ubuntu:22.04 "/bin/bash" 5 分钟前 已运行 5 分钟 loving_einstein

在此示例中,容器 ID 为 1234567890ab

通过 ID 访问容器

一旦你获得了容器 ID,就可以使用它与容器进行交互。例如,你可以使用 docker attach 命令连接到容器的终端:

docker attach 1234567890ab

这将把你的终端连接到正在运行的容器,使你能够直接与它进行交互。

你还可以分别使用 docker stopdocker startdocker rm 命令,通过容器 ID 来停止、启动或删除容器。

## 停止容器
docker stop 1234567890ab

## 启动容器
docker start 1234567890ab

## 删除容器
docker rm 1234567890ab

通过使用容器 ID,你可以轻松地识别和管理正在运行的 Docker 容器。

通过名称识别正在运行的容器

除了使用容器 ID 之外,你还可以通过容器名称来识别正在运行的 Docker 容器。当你创建一个新容器时,Docker 会自动为其分配一个默认名称,或者你也可以使用 --name 选项指定一个自定义名称。

按名称列出正在运行的容器

要列出所有正在运行的容器及其名称,你可以使用 docker ps 命令:

docker ps

这将显示一个类似于上一节中的表格,但“NAMES”列中显示的是容器名称。

容器 ID 镜像 命令 创建时间 状态 端口 名称
1234567890ab ubuntu:22.04 "/bin/bash" 5 分钟前 已运行 5 分钟 loving_einstein

在此示例中,容器名称是“loving_einstein”。

通过名称访问容器

一旦你知道了容器名称,就可以使用它与容器进行交互。例如,你可以使用 docker attach 命令连接到容器的终端:

docker attach loving_einstein

这将把你的终端连接到正在运行的容器,使你能够直接与它进行交互。

你还可以分别使用 docker stopdocker startdocker rm 命令,通过容器名称来停止、启动或删除容器。

## 停止容器
docker stop loving_einstein

## 启动容器
docker start loving_einstein

## 删除容器
docker rm loving_einstein

使用容器名称可以更轻松地记住和管理你的 Docker 容器,尤其是在处理多个容器时。

总结

在本教程结束时,你将对如何通过 ID 或名称识别正在运行的 Docker 容器有扎实的理解。这些知识将使你能够有效地管理你的 Docker 环境、排查问题,并简化与 Docker 相关的整体工作流程。