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 文件的用户组归属
相关推荐
孙克旭_1 小时前
day039-nginx配置补充
linux·运维·nginx
阙芸1 小时前
深入理解“回调地狱“(Callback Hell)
linux·运维·ubuntu
Demisse3 小时前
[Linux] Vim编辑器 & Linux输入输出重定向
linux·编辑器·vim
528304 小时前
容器技术入门与Docker环境部署
java·docker·容器
5174 小时前
通过Docker挂载nginx并修改页面
nginx·docker·容器
来一杯龙舌兰9 小时前
【Kubernetes】从零搭建K8s集群:虚拟机环境配置全指南(DNS/网络/防火墙/SELinux全解析一站式配置图文教程)
linux·网络·kubernetes
A.A呐10 小时前
【Linux第四章】gcc、makefile、git、GDB
linux·c语言·开发语言·c++·git
Fireworkitte11 小时前
如何使用 Dockerfile 创建自定义镜像
运维·docker·容器
A-花开堪折12 小时前
01-驱动开发开篇
linux·嵌入式硬件
程序员JerrySUN13 小时前
Linux 内核同步管理全解:原理 + 实战 + 考点
linux·运维·服务器