Docker 中如何查看当前系统

在Docker中,我们经常需要了解当前系统的一些信息,例如操作系统版本、内核版本、容器使用的资源等。本文将介绍一些方便查看当前系统信息的方法,并提供相应的代码示例。

1. 查看操作系统版本

要查看当前系统的操作系统版本,我们可以使用cat命令读取/etc/os-release文件。这个文件包含了操作系统的一些基本信息,例如发行版名称、版本号等。

cat /etc/os-release

示例输出:

NAME="Ubuntu"
VERSION="20.04.3 LTS (Focal Fossa)"
...

我们也可以使用lsb_release命令来获取操作系统的信息。

lsb_release -a

示例输出:

No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 20.04.3 LTS
...

2. 查看内核版本

要查看当前系统的内核版本,可以使用uname命令。

uname -r

示例输出:

5.4.0-89-generic

3. 查看容器资源使用情况

在Docker中,我们经常需要了解容器使用的资源情况,例如CPU使用率、内存使用量等。以下是一些常用的命令和API来查看容器资源使用情况。

3.1 查看容器列表

要查看当前运行的容器列表,可以使用以下命令:

docker ps

示例输出:

CONTAINER ID   IMAGE     COMMAND   CREATED         STATUS         PORTS     NAMES
63d2c56cd8b3   nginx     "nginx"   5 minutes ago   Up 5 minutes   80/tcp    webserver

3.2 查看容器的资源使用情况

要查看容器的资源使用情况,可以使用以下命令:

docker stats <container_id>

示例输出:

CONTAINER           CPU %     MEM USAGE / LIMIT     MEM %    NET I/O       BLOCK I/O   PIDS
63d2c56cd8b3        0.10%     2.516MiB / 7.638GiB   0.03%    648B / 648B   0B / 0B     2

3.3 使用 Docker API 查看容器的资源使用情况

除了使用命令行工具,我们还可以使用 Docker API 来获取容器的资源使用情况。以下是一个使用 Python 调用 Docker API 的示例:

import docker

client = docker.from_env()
container = client.containers.get('<container_id>')
stats = container.stats(stream=False)

print(stats['cpu_stats']['cpu_usage']['total_usage'])
print(stats['memory_stats']['usage'])

示例输出:

32426241
368640

总结

本文介绍了在 Docker 中查看当前系统信息的方法。我们可以通过查看操作系统版本、内核版本来了解当前系统的基本信息。此外,我们还可以使用 Docker 命令和 Docker API 来查看容器的资源使用情况。这些方法可以帮助我们更好地了解当前系统和容器的情况,从而更好地管理和优化应用程序的运行环境。