在Ubuntu 22.04 中安装Docker的详细指南

server/2025/3/30 1:53:18/

这里写目录标题

    • 前言
    • 一、安装 Docker
      • 1. 卸载旧版本(如有)
      • 2. 更新系统并安装依赖工具
      • 3. 添加 Docker 官方 GPG 密钥
      • 4. 设置 Docker 仓库
      • 5. 安装 Docker Engine
      • 6. 验证安装
    • 二、配置 Docker 镜像加速
      • 1. 修改 Docker 配置文件
      • 2. 重启 Docker 服务
      • 3. 验证加速器是否生效
    • 三、管理 Docker 用户权限(可选)
    • 四、验证 Docker 运行状态
    • 五、卸载 Docker
    • 常见问题
      • 1. 镜像加速不生效怎么办?
      • 2. 如何安装特定版本 Docker?
    • 结语


前言

Docker 是当前最流行的容器化技术之一,它能够帮助开发者快速构建、部署和运行应用程序。本文将详细介绍如何在 Ubuntu 22.04 系统中安装 Docker 并配置国内镜像加速服务,解决从 Docker Hub 拉取镜像速度慢的问题。


一、安装 Docker

1. 卸载旧版本(如有)

如果系统中存在旧版本 Docker,请先执行卸载:

sudo apt remove docker docker-engine docker.io containerd runc

2. 更新系统并安装依赖工具

sudo apt update
sudo apt install -y ca-certificates curl gnupg lsb-release

3. 添加 Docker 官方 GPG 密钥

sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

4. 设置 Docker 仓库

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

5. 安装 Docker Engine

sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin

6. 验证安装

sudo docker run hello-world

若看到 Hello from Docker! 提示,则安装成功。


二、配置 Docker 镜像加速

1. 修改 Docker 配置文件

创建或编辑 /etc/docker/daemon.json

sudo nano /etc/docker/daemon.json

输入以下内容(以阿里云镜像为例):

{"registry-mirrors": ["https://<你的ID>.mirror.aliyuncs.com"]
}
  • 其他常用加速器
    • 腾讯云:https://mirror.ccs.tencentyun.com
    • 中科大:https://docker.mirrors.ustc.edu.cn
    • 网易云:https://hub-mirror.c.163.com

🔑 提示:阿里云用户需前往 容器镜像服务控制台 获取专属加速地址。

2. 重启 Docker 服务

sudo systemctl daemon-reload
sudo systemctl restart docker

3. 验证加速器是否生效

docker info

在输出中查找 Registry Mirrors,确认包含配置的镜像地址。


三、管理 Docker 用户权限(可选)

默认需使用 sudo 执行 Docker 命令。若希望普通用户直接操作,执行:

sudo usermod -aG docker $USER

退出终端重新登录后生效。


四、验证 Docker 运行状态

运行一个 Nginx 容器测试:

docker run -d -p 80:80 --name my-nginx nginx

访问 http://localhost,若看到 Nginx 欢迎页则一切正常。


五、卸载 Docker

如需卸载:

sudo apt purge docker-ce docker-ce-cli containerd.io
sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd

常见问题

1. 镜像加速不生效怎么办?

  • 检查 JSON 文件格式是否正确(如逗号、引号)。
  • 执行 sudo systemctl restart docker 后重试。

2. 如何安装特定版本 Docker?

列出可用版本并安装:

apt-cache madison docker-ce
sudo apt install docker-ce=<版本号>

结语

通过以上步骤,您已成功在 Ubuntu 22.04 上安装 Docker 并配置了镜像加速器。镜像加速能显著提升拉取镜像的速度,尤其在开发和生产环境中至关重要。如需进一步学习 Docker,可参考官方文档或社区教程。


http://www.ppmy.cn/server/179385.html

相关文章

centos7安装单机kafka

下载安装包并进行解压&#xff1a;kafka_2.12-2.2.1.tgz #解压 tar -zxvf /usr/local/kafka/kafka_2.12-2.2.1.tgzconsumer.properties 是消费者的相关配置producer.properties 是生产者的相关配置server.properties 是 kafka 服务的配置zookeeper.properties 是 zookeeper 的…

初级:数组与字符串面试题深度剖析

一、引言 在Java开发中&#xff0c;数组和字符串是最常用的数据结构之一。面试官通过相关问题考察候选人对数组和字符串的理解和运用能力&#xff0c;以及在实际开发中解决相关问题的经验。本文将深入剖析常见的数组与字符串面试题&#xff0c;结合实际开发场景&#xff0c;帮…

LeetCode --- 441周赛

题目列表 3487. 删除后的最大子数组元素和 3488. 距离最小相等元素查询 3489. 零数组变换 IV 3490. 统计美丽整数的数目 一、删除后的最大子数组元素和 题目要求我们去掉一些元素使得数组之和最大&#xff0c;即只取数组中 ≥ 0 \ge0 ≥0 的数字&#xff0c;同时数组中不能包…

nebula graph传统使用Docker进行项目发版

nebula graph传统使用Docker进行项目发版 1. nebula graph服务2. 搭建ES集群3. 注意事项3.1 图数据库的启动顺序3.2 模糊查询失效 1. nebula graph服务 1.在测试服务器中执行如下命令 docker commit 85b6e2b8xxx xxx_nebula_es:1.0.0.2执行docker images之后能看到新的镜像 x…

PHP转GO Day4 错误处理机制(计算器除零保护) 详细实现指南与问题解决方案

Day4 错误处理机制&#xff08;计算器除零保护&#xff09; 详细实现指南与问题解决方案&#xff0c; 包含代码对比和常见错误排查&#xff1a; 计算器除零错误处理指南 一、错误处理前代码&#xff08;Day2版本&#xff09; case "/":fmt.Printf("结果&#x…

MySQL 表分区实践案例:基于 ERP 订单系统的租户分区

MySQL 表分区实践案例&#xff1a;基于 ERP 订单系统的租户分区 在处理海量数据的 ERP 系统中&#xff0c;表分区是一种有效的数据管理策略。本文通过一个基于 ERP 订单系统的实践案例&#xff0c;详细讲解 MySQL 表分区的实现、维护及查看。 一、业务背景 在 ERP 系统中&am…

Python技术栈与数据可视化创意实践详解(三)

Python在数据可视化领域凭借丰富的库和灵活的生态系统&#xff0c;能够实现从基础图表到复杂交互式可视化的全场景覆盖。以下从技术选型、创意实现到实战优化进行系统化解析&#xff0c;并提供可直接落地的代码示例。 一、Python数据可视化技术栈 1. 基础与统计可视化 Matplotl…

笔记:介绍如何使用Docfx生成开发文档

DocFX 是一个强大的文档生成工具&#xff0c;特别适合为 .NET 项目生成 API 文档和开发文档。以下是使用 DocFX 的详细步骤&#xff0c;从安装到生成文档的全过程&#xff1a; 1. 安装 DocFX 1.1 安装 .NET SDK DocFX 是基于 .NET 的工具&#xff0c;因此需要先安装 .NET SDK…