Ubuntu 22.04 系统下 Docker 安装与配置全指南

Ubuntu 22.04 系统下 Docker 安装与配置全指南

一、前言

Docker 作为现代开发中不可或缺的容器化工具,能极大提升应用部署和环境管理的效率。本文将详细介绍在 Ubuntu 22.04 系统上安装与配置 Docker 的完整流程,包括环境准备、安装步骤、权限配置及镜像加速优化等关键环节。

二、安装前的环境准备

1. 卸载旧版本 Docker(如有)

在安装新版本 Docker 前,需先卸载系统中可能存在的旧版本:

bash 复制代码
sudo apt-get remove docker docker-engine docker.io containerd runc
2. 安装必要的支持组件

安装依赖包以确保 Docker 正常运行:

bash 复制代码
sudo apt install apt-transport-https ca-certificates curl software-properties-common gnupg lsb-release

三、Docker 安装核心步骤

1. 添加 Docker 官方 GPG 密钥(推荐使用国内镜像源)

国内用户建议使用阿里云镜像源的 GPG 密钥(避免网络问题):

bash 复制代码
# 阿里源 GPG 密钥
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
2. 配置软件源(官方源与阿里源二选一)

方案一:使用 Docker 官方源(国外源,可能较慢)

bash 复制代码
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

方案二:使用阿里云镜像源(推荐国内用户)

bash 复制代码
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
3. 更新软件包索引并安装 Docker
bash 复制代码
# 更新系统软件源
sudo apt update

# 安装 Docker 最新稳定版
sudo apt install docker-ce docker-ce-cli containerd.io

# 验证 Docker 安装版本
sudo docker version

# 检查 Docker 服务运行状态
sudo systemctl status docker

四、优化 Docker 使用体验

1. 安装 Docker 命令补全工具
bash 复制代码
# 安装 bash 补全工具
sudo apt-get install bash-completion

# 下载 Docker 补全脚本
sudo curl -L https://raw.githubusercontent.com/docker/docker-ce/master/components/cli/contrib/completion/bash/docker -o /etc/bash_completion.d/docker.sh

# 加载补全配置
source /etc/bash_completion.d/docker.sh
2. 允许非 Root 用户执行 Docker 命令

默认情况下,Docker 命令需要 root 权限,可通过以下步骤赋予普通用户权限:

bash 复制代码
# 创建 docker 用户组(若不存在)
sudo groupadd docker

# 将当前用户添加到 docker 组
sudo usermod -aG docker $USER

# 使权限立即生效
newgrp docker

# 测试权限(无需 sudo 执行 Docker 命令)
docker ps -a
3. 持久化权限配置(避免重启终端后失效)

编辑 .bashrc 文件,添加以下内容以确保每次登录时自动配置权限:

bash 复制代码
vi ~/.bashrc

# 在文件末尾添加
groupadd -f docker

保存后执行 source ~/.bashrc 使配置生效。

五、配置 Docker 镜像加速器(解决拉取慢问题)

国内访问 Docker 官方镜像仓库可能会遇到网络问题,需配置镜像加速器:

bash 复制代码
# 创建或修改 Docker 配置文件
sudo vi /etc/docker/daemon.json

在文件中添加以下内容(可选择部分国内镜像源):

json 复制代码
{
    "registry-mirrors": [
        "https://docker.registry.cyou",
        "https://mirror.aliyuncs.com",
        "https://dockerproxy.com",
        "https://mirror.baidubce.com",
        "https://docker.m.daocloud.io",
        "https://docker.mirrors.ustc.edu.cn"
    ]
}

修改完成后,重启 Docker 服务使配置生效:

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

六、验证 Docker 完整功能

完成所有配置后,可通过运行测试容器验证 Docker 是否正常工作:

bash 复制代码
# 运行一个测试用的 Docker 容器(输出 "Hello from Docker!")
sudo docker run hello-world

若看到类似以下输出,则表示 Docker 安装与配置成功:

复制代码
Hello from Docker!
This message shows that your installation appears to be working correctly.
...

七、总结

通过以上步骤,我们在 Ubuntu 22.04 系统上完成了 Docker 的安装、权限配置及镜像加速优化。Docker 的容器化技术能帮助开发者更高效地管理应用环境,后续可进一步学习 Docker Compose、容器编排等进阶功能,提升开发与部署效率。

注意事项:

  • 国内用户务必配置镜像加速器,避免拉取镜像时出现网络超时
  • 新增用户到 docker 组后,需重新登录或执行 newgrp docker 使权限生效
  • 若遇到权限问题,可检查 /var/run/docker.sock 文件的用户组归属
相关推荐
yuanzhengme26 分钟前
Shell【脚本 02】离线安装配置Zookeeper及Kafka并添加service服务和开机启动(脚本分析)
linux·zookeeper·kafka·自动化·安装脚本
潘多编程29 分钟前
云原生三剑客:Kubernetes + Docker + Spring Cloud 实战指南与深度整合
docker·云原生·kubernetes
sakoba1 小时前
Docker学习其二(容器卷,Docker网络,Compose)
运维·网络·学习·docker·容器·基础
Johny_Zhao1 小时前
阿里云平台健康检查巡检清单-运维篇
linux·网络安全·阿里云·信息安全·云计算·shell·系统运维
来自于狂人1 小时前
CentOS 镜像源配置与 EOL 后的应对策略
linux·运维·centos
博语小屋2 小时前
进程初识之进程状态
linux
吉凶以情迁3 小时前
window服务相关问题探索 go语言服务开发探索调试
linux·服务器·开发语言·网络·golang
Tipriest_3 小时前
通过filezilla在局域网下实现高速传输数据
ubuntu·数据传输·filezilla
柏木乃一4 小时前
Linux初步认识与指令与权限
linux·运维·服务器·shell·权限
Joemt4 小时前
ubuntu源码编译安装cmake高版本、pybind11安装、crow使用
linux·运维·ubuntu