W
e
l
c
o
m
e
: )

Docker的生态架构及安装

一、Docker的生态架构

一、生态架构

Docker的生态架构图如下所示:

image.png

Client(客户端):用户在客户端输入命令(docker run),命令会被发送给Docker daemon执行;

  • Docker Host(Docker主机/服务端):Docker运行的核心环境;
    • Docker daemon(守护线程):它是一个后台运行的服务程序(dockerd),负责接收来自Client的请求,并管理Docker对象(如镜像、容器、网络和存储卷等);
    • Images(镜像):只读模板,包含了运行应用所需的全部代码、库、环境变量和配置文件;
    • Containers(容器):容器是镜像的运行实例,如果把镜像比作“类”,那么容器就是基于该类创建的“对象”;
  • Registry(镜像仓库):专门存放Docker镜像的地方,类似于代码托管平台(Github);
    • 公共仓库:比较著名的就是Docker Hub;
    • 私有仓库:比如企业用Harbor搭建企业内部私有仓库;

二、Docker版本

  • Docker-ce Docker社区版:主要用于个人开发者测试使用,免费版本
  • Docker-ee Docker企业版:主要用于为企业开发及应用部署使用,收费版本,免费试用一个月,2020年因国际政治原因曾一度限制中国企业使用。

二、Docker安装

笔者是在Ubuntu环境下进行安装的,如果是使用CentOS环境,命令会有所不同,可以参照阿里巴巴开源镜像站的安装步骤进行安装:https://developer.aliyun.com/mirror/docker-ce?spm=a2c6h.13651102.0.0.50ee1b11XfKAwv

# step 1: 安装必要的一些系统工具
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg

# step 2: 信任 Docker 的 GPG 公钥
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg

# Step 3: 写入软件源信息
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://mirrors.aliyun.com/docker-ce/linux/ubuntu \
  "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
 
# Step 4: 安装Docker
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

# 安装指定版本的Docker-CE:
# Step 1: 查找Docker-CE的版本:
# apt-cache madison docker-ce
#   docker-ce | 17.03.1~ce-0~ubuntu-xenial | https://mirrors.aliyun.com/docker-ce/linux/ubuntu xenial/stable amd64 Packages
#   docker-ce | 17.03.0~ce-0~ubuntu-xenial | https://mirrors.aliyun.com/docker-ce/linux/ubuntu xenial/stable amd64 Packages
# Step 2: 安装指定版本的Docker-CE: (VERSION例如上面的17.03.1~ce-0~ubuntu-xenial)
# sudo apt-get -y install docker-ce=[VERSION]

# Step5:验证Docker是否安装完成
root@DESKTOP-0QJE53P:/etc/apt/sources.list.d# docker version
Client: Docker Engine - Community
 Version:           29.5.3
 API version:       1.54
 Go version:        go1.26.4
 Git commit:        d1c06ef
 Built:             Wed Jun  3 17:59:55 2026
 OS/Arch:           linux/amd64
 Context:           default

Server: Docker Engine - Community
 Engine:
  Version:          29.5.3
  API version:      1.54 (minimum version 1.40)
  Go version:       go1.26.4
  Git commit:       285b471
  Built:            Wed Jun  3 17:59:55 2026
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          v2.2.4
  GitCommit:        193637f7ee8ae5f5aa5248f49e7baa3e6164966e
 runc:
  Version:          1.3.5
  GitCommit:        v1.3.5-0-g488fc13e
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0
posted @ 2026-06-12 09:52  寒月静无光  阅读(29)  评论(0)    收藏  举报