📅  最后修改于: 2023-12-03 15:24:51.676000             🧑  作者: Mango
有时候,在开发或者维护 Docker 镜像或者容器时,我们需要确保 Docker 是否从引导运行了。这个过程非常重要,因为如果 Docker 没有从引导运行,可能会导致 Docker 容器的故障或者不稳定性。下面是几种测试 Docker 是否从引导运行的方法。
使用下面的命令检查 Docker 是否从引导运行:
$ ps aux | grep dockerd
如果 Docker 从引导运行,你应该会看到类似下面的输出:
root 2898 0.0 0.1 4085988 16948 ? Ssl 14:32 0:00 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
在上面的输出中,2898
是 Docker 的 PID。如果你没有看到上面的输出,可以确认 Docker 没有从引导运行。
使用下面的命令检查 Docker 服务状态:
$ systemctl status docker
如果 Docker 从引导运行,你应该会看到类似下面的输出:
● docker.service - Docker Application Container Engine
Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2021-05-21 15:28:51 UTC; 39min ago
Docs: https://docs.docker.com
Main PID: 2684 (dockerd)
Tasks: 13
Memory: 49.4M
CGroup: /system.slice/docker.service
├─2684 /usr/bin/dockerd -H fd://
└─2713 docker-containerd --config /var/run/docker/containerd/containerd.toml
May 21 15:28:51 ubuntu systemd[1]: Starting Docker Application Container Engine...
May 21 15:28:51 ubuntu dockerd[2684]: time="2021-05-21T15:28:51.587337252Z" level=warning msg="Your kernel does not support cgroup cpuset"
May 21 15:28:51 ubuntu dockerd[2684]: time="2021-05-21T15:28:51.587778516Z" level=warning msg="Your kernel does not support cgroup rt period"
May 21 15:28:51 ubuntu dockerd[2684]: time="2021-05-21T15:28:51.588174157Z" level=warning msg="Your kernel does not support cgroup rt runtime"
May 21 15:28:51 ubuntu dockerd[2684]: time="2021-05-21T15:28:51.593202834Z" level=info msg="Loading containers: start."
May 21 15:28:51 ubuntu dockerd[2684]: time="2021-05-21T15:28:51.761050174Z" level=info msg="Default bridge (docker0) is assigned with an IP address 172.17.0.0/16. Daemon option --bip can be used to set a preferable IP address"
May 21 15:28:51 ubuntu dockerd[2684]: time="2021-05-21T15:28:51.790122744Z" level=info msg="Loading containers: done."
May 21 15:28:51 ubuntu dockerd[2684]: time="2021-05-21T15:28:51.824269409Z" level=info msg="Docker daemon" commit=afacb8b7f0 graphdriver(s)=overlay2 version=19.03.15
May 21 15:28:51 ubuntu dockerd[2684]: time="2021-05-21T15:28:51.828029540Z" level=info msg="Daemon has completed initialization"
May 21 15:28:51 ubuntu systemd[1]: Started Docker Application Container Engine.
在上面的输出中,Active: active (running)
表示 Docker 当前正在运行。如果你没有看到上面的输出,可以确认 Docker 没有从引导运行。
使用下面的命令检查 Docker 是否自动启动:
$ systemctl is-enabled docker
如果 Docker 自动启动了,你应该会看到类似下面的输出:
enabled
如果你没有看到上面的输出,可以确认 Docker 没有从引导运行。
这篇文章介绍了几种测试 Docker 是否从引导运行的方法,包括检查 Docker PID、检查 Docker 服务状态和检查 Docker 是否自动启动。如果你遇到了 Docker 容器的故障或者不稳定性,可以使用这些方法检查 Docker 是否从引导运行。