二、Docker安装部署教程

作者:IvanCodes

日期:2025年7月7日

专栏:Docker教程

在前一篇文章中,我们了解了 Docker 的历史、能做什么以及核心概念 (镜像、容器、仓库)。现在,我们将更进一步,深入探究 Docker 中最常用也最核心的命令------docker run------其背后的工作流程与原理。同时,我们还将详细介绍如何在Linux系统上安装部署 Docker,并配置镜像加速器以提升镜像拉取速度。

一、docker run 的神奇之旅:从一条命令到一个运行中的容器

当你在终端中敲下 docker run 命令时,比如 docker run -it ubuntu /bin/bash,看似简单的一行命令背后,Docker 引擎执行了一系列复杂而有序的操作。

二、在 Linux (以 CentOS/Ubuntu 为例) 上安装部署 Docker

2.1 准备工作

  • 系统要求:建议使用 64 位的 CentOS 7/8 或 Ubuntu 18.04/20.04/22.04 LTS 版本。
  • 卸载旧版本 :如果系统上安装了旧的 Docker 版本,建议先卸载。
bash 复制代码
# 对于 CentOS
yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine
# 对于 Ubuntu
apt-get remove docker docker-engine docker.io containerd runc


2.2 安装步骤

对于 CentOS:

  1. 安装必要的工具
bash 复制代码
yum install -y yum-utils
  1. 设置 Docker 的 yum 仓库
bash 复制代码
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

3. 安装 Docker 引擎

bash 复制代码
yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin


4. 启动并设置开机自启

bash 复制代码
systemctl start docker
systemctl enable docker

对于 Ubuntu:

1. 更新 apt 包索引并安装依赖
bash 复制代码
apt-get update
apt-get install -y ca-certificates curl gnupg
2. 添加 Docker 的官方 GPG 密钥
bash 复制代码
install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
chmod a+r /etc/apt/keyrings/docker.gpg
3. 设置 Docker 的 apt 仓库
bash 复制代码
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
4. 安装 Docker 引擎
bash 复制代码
apt-get update
apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

2.3 验证安装

运行经典的 hello-world 镜像来验证 Docker 是否安装成功。

bash 复制代码
docker run hello-world

如果看到 "Hello from Docker!" 的欢迎信息,说明安装成功!

三、配置 Docker 镜像加速器

由于Docker Hub 的服务器在国外,直接拉取镜像有时会非常缓慢。配置国内的镜像加速器可以显著提升下载速度。

常见的国内镜像加速器提供商

  • 阿里云容器镜像服务 (ACR)
  • 网易云镜像服务
  • DaoCloud
  • 腾讯云容器镜像服务 (TCR)

配置步骤 (以通用方式为例):

1. 创建或修改 Docker 守护进程配置文件

配置文件通常是 /etc/docker/daemon.json。如果该文件不存在,请创建它。

bash 复制代码
mkdir -p /etc/docker
tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://<your-accelerator-url>"]
}
EOF

请将 https://<your-accelerator-url> 替换为你从加速器提供商获取的专属加速地址。

例如,使用网易云的加速器地址:

bash 复制代码
tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["http://hub-mirror.c.163.com"]
}
EOF

如果你想配置多个加速器地址作为备份,可以换成下面的命令:

bash 复制代码
tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": [
    "https://registry.docker-cn.com",
    "https://mirror.tuna.tsinghua.edu.cn",
    "https://mirror.ccs.tencentyun.com",
    "http://hub-mirror.c.163.com"
  ]
}
EOF

2. 重新加载配置并重启 Docker 服务

修改完配置文件后,必须让 Docker Daemon 重新加载配置并重启。

bash 复制代码
systemctl daemon-reload
systemctl restart docker

3. 验证加速器是否生效

执行 docker info 命令,在输出信息中查找 Registry Mirrors 部分。

bash 复制代码
docker info

如果能看到你配置的加速器地址列表,说明配置成功。

到此,恭喜你配置成功!现在,当你再次执行 docker pulldocker run 一个本地不存在的镜像时,Docker 会优先尝试从配置的加速器拉取,你会感受到速度的明显提升。

相关推荐
南山十一少1 小时前
docker的安装及使用
运维·docker·容器
无籽西瓜a1 小时前
Docker 环境下 Redis Lua 脚本部署与执行
redis·docker·lua
道清茗1 小时前
【Kubernetes知识点问答题】PriorityClass、HPA、Argo CD 与 CI/CD 流水线
ci/cd·容器·kubernetes
万里不留行1 小时前
解决ubuntu docker拉取环境失败问题
linux·ubuntu·docker
无名-CODING2 小时前
从零开始!Vue3+SpringBoot前后端分离项目Docker部署实战(下):Vue前端Nginx反代与致命坑点盘点
前端·spring boot·docker
DJ斯特拉2 小时前
Docker基本使用
运维·docker·容器
无名-CODING2 小时前
从零开始!Vue3+SpringBoot前后端分离项目Docker部署实战(中):Spring Boot后端与Docker Compose串联
spring boot·后端·docker
岁岁种桃花儿14 小时前
kubenetes从入门到上天系列第二十一篇:Kubernetes安装Ingress实战
云原生·容器·kubernetes
洛阳泰山16 小时前
MaxKB4j Docker Compose 部署指南
java·docker·llm·springboot·rag·maxkb4j
程序员老赵16 小时前
超全 Docker 镜像源配置指南|Windows/Mac/Linux一键搞定,拉镜像再也不卡顿
linux·后端·容器