要在 ubuntu 上安装 docker 引擎,我们运行:
sudo apt-get install docker-ce
但文档提及安装说明如下:
sudo apt-get install docker-ce docker-ce-cli containerd.io
$ docker version
Client: Docker Engine - Community
Version: 19.03.13
API version: 1.40
Go version: go1.13.15
Git commit: 4484c46d9d
Built: Wed Sep 16 17:02:36 2020
OS/Arch: linux/amd64
Experimental: false
Server: Docker Engine - Community
Engine:
Version: 19.03.13
API version: 1.40 (minimum version 1.12)
Go version: go1.13.15
Git commit: 4484c46d9d
Built: Wed Sep 16 17:01:06 2020
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.3.7
GitCommit: 8fba4e9a7d01810a393d5d25a3621dc101981175
runc:
Version: 1.0.0-rc10
GitCommit: dc9208a3303feef5b3839f4323d9beb36df0a9dd
docker-init:
Version: 0.18.0
GitCommit: fec3683
$
$
$ ps -eaf | grep contain
root 1704 1 0 10:05 ? 00:00:02 /usr/bin/containerd
root 2233 1 0 10:05 ? 00:00:04 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
$
$
是否有docker-ce
适用于 docker daemon/server/engine(only) 的安装包?
是否有docker-ce-cli
一个安装包用于安装 docker 客户端(仅)?
是否有containerd.io
一个安装包用于在下面的架构中安装 containerd 组件?
答案1
docker-ce 是 docker daemon/server/engine(only) 的安装包吗?
docker-ce-cli 是一个仅用于安装 docker 客户端的安装包吗?
containerd.io 是一个用于在下面的架构中安装 containerd 组件的安装包吗?
所有这些都是肯定的。架构图非常清晰。Docker 本身曾经将所有这些都实现为一个二进制文件,但随着时间的推移,他们决定采用开放容器倡议(国际清算银行)。
containerd
是遵循 OCI 的一个实现。它使用内核特性为容器提供运行时环境。
dockerd
与 Docker 用户对话并以简单命令(如、、和)containerd
的形式为他们提供更多功能。docker build
docker network
docker volume
docker inspect
docker-cli
提供通过本地套接字或远程与 APIdocker
通信的二进制客户端dockerd
。即使没有此客户端,您仍然可以仅使用 API 来构建和运行容器。