CloudEtopya

Docker 入门实战:从安装到镜像加速

Docker 入门实战教程,涵盖容器核心概念、安装配置和镜像加速,助你快速上手容器化部署。

前言

Docker 是一个开源的容器化平台,用于构建、部署和运行应用程序。它基于 Linux 容器(LXC)技术,提供了一种轻量级且可移植的虚拟化解决方案。

通过使用 Docker,开发人员可以将应用程序及其所有依赖项打包到一个称为容器的独立单元中。这些容器可以在任何支持 Docker 的操作系统上运行,无需额外配置。每个容器都是独立的、安全的,并且具有自己的文件系统、网络和进程空间。

这篇文章记录了在 CentOS 上安装 Docker 并配置国内镜像加速的完整过程。

Docker 的主要优点

  • 轻量级:相比传统的虚拟机,Docker 容器占用更少的系统资源,启动更快
  • 可移植性:容器可以在不同的环境中运行,无论是开发、测试还是生产环境
  • 简化部署:将应用程序及其依赖项作为一个整体打包,简化部署流程
  • 灵活性:提供灵活的管理和扩展功能,可以快速部署、停止、复制和迁移容器
  • 高效性:容器共享主机的操作系统内核,资源利用和性能非常高效

环境要求

Docker 要求 CentOS 内核版本高于 3.10(CentOS 7 以上无需升级内核)。

# 查看系统内核版本
uname -r
# 输出示例:3.10.0-1160.92.1.el7.x86_64

本文基于 CentOS 7.9 操作,如有其他问题请参考 Docker 官方文档

安装 Docker

1. 卸载旧版本(如已安装)

# 检查是否已安装
docker --version
# 如果提示 command not found,说明未安装

# 卸载旧版本
sudo yum remove docker \
                docker-client \
                docker-client-latest \
                docker-common \
                docker-latest \
                docker-logrotate \
                docker-engine

2. 安装依赖工具

sudo yum install -y yum-utils

3. 配置 Docker 仓库

sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo

4. 安装 Docker 引擎

安装最新版本:

sudo yum -y install docker-ce docker-ce-cli containerd.io

或安装特定版本:

# 查看可用版本
yum list docker-ce --showduplicates | sort -r

# 安装指定版本(示例)
sudo yum install docker-ce-24.0.0 docker-ce-cli-24.0.0 containerd.io docker-buildx-plugin docker-compose-plugin

5. 启动 Docker

# 启动 Docker
sudo systemctl start docker

# 设置开机自启
sudo systemctl enable docker

# 验证安装
docker --version
# 输出示例:Docker version 24.0.6, build ed223bc

6. 验证安装

docker run hello-world

如果看到 Hello from Docker! 的输出,说明安装成功。

配置国内镜像加速

由于 Docker Hub 服务器在国外,拉取镜像时会很慢。可以使用国内的镜像加速服务,例如阿里云、清华、网易、中科大等。

这里以阿里云为例:

  1. 打开 阿里云镜像加速地址 并登录
  2. 在左侧菜单中选择「镜像加速器」
  3. 复制你的专属加速地址
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://你的ID.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

常见问题

❌ 拉取镜像超时

原因:Docker Hub 在国内访问慢。

解决:配置国内镜像加速器(见上文)。

❌ 权限不足

原因:当前用户不在 docker 用户组。

解决

sudo usermod -aG docker $USER
# 重新登录后生效

以上就是 Docker 安装和配置的全部内容。后续文章会继续介绍 Docker 的进阶用法。