当前位置: 首页 > news >正文

在Ubuntu-22.04 [WSL2]中配置Docker

文章目录

  • 0. 进入Ubuntu-22.04
  • 1. 更新系统软件包
  • 2. 安装Docker相关依赖包
  • 3. 添加Docker官方GPG密钥
  • 4. 添加Docker软件源
  • 5. 安装Docker Engine
    • 5.1 更新软件包列表
    • 5.2 安装Docker相关软件包
  • 6. 验证Docker安装是否成功
    • 6.1 查看Docker版本信息
    • 6.2 启动Docker
    • 6.3 配置镜像加速器
    • 6.4 运行一个简单的测试容器
    • 6.6 Docker拉取MySQL镜像
  • 7. 实战总结

0. 进入Ubuntu-22.04

  • 在PowerShell里执行命令:wsl -d Ubuntu-22.04
    在这里插入图片描述

1. 更新系统软件包

  • 在安装Docker之前,首先要确保系统的软件包列表是最新的
  • 执行命令:sudo apt -y update
    在这里插入图片描述
  • 执行命令:sudo apt -y upgrade
    在这里插入图片描述
  • 说明:sudo apt -y update命令用于更新软件包列表信息,让系统知道可以安装的软件包的最新版本;sudo apt -y upgrade命令用于将已安装的软件包升级到最新版本。-y参数表示自动回答“是”,这样在更新和升级过程中就不会因为需要用户确认而中断。

2. 安装Docker相关依赖包

  • 安装一些必要的软件包,这些软件包允许通过HTTPS来获取软件包,以及用于验证软件包的完整性的工具。
  • 执行命令:sudo apt -y install apt-transport-https ca-certificates curl software-properties-common
    在这里插入图片描述
  • 说明安装的软件包
    1. apt-transport-https:这个软件包允许apt使用https协议来下载软件包。通常情况下,默认的apt仓库使用http协议,但对于一些安全要求较高的软件(如Docker),其仓库使用https协议,所以需要安装这个软件包来支持通过https下载。
    2. ca-certificates:包含了一系列的根证书,用于验证软件包来源的合法性。当通过https下载软件时,系统需要使用这些证书来确认下载的软件是来自可信的源。
    3. curl:是一个用于从服务器获取数据或者文件的工具。在这里主要用于从Docker官方网站下载安装脚本或者获取一些配置信息。
    4. software-properties-common:提供了管理软件源(repository)的功能,比如添加或者删除软件源等操作。

3. 添加Docker官方GPG密钥

  • 为了确保下载的Docker软件包是正版且没有被篡改,需要添加Docker官方的GPG密钥。
  • 执行命令:curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
    在这里插入图片描述
  • 命令说明
    1. curl -fsSL https://download.docker.com/linux/ubuntu/gpg:使用curl工具从Docker官方指定的网址(https://download.docker.com/linux/ubuntu/gpg)下载GPG密钥文件。-f参数表示在下载过程中如果出现错误,curl会直接返回错误信息而不是输出HTML文档。-s参数表示静默模式,不显示下载进度。-L参数表示如果下载的链接是一个重定向链接,curl会自动跟踪重定向并下载最终指向的文件。
    2. sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg:使用gpg工具对下载的密钥文件进行处理。--dearmor参数表示将密钥文件转换为一种更适合存储和分发的格式。-o /usr/share/keyrings/docker - archive - keyring.gpg指定了输出文件的路径和名称,即将转换后的密钥文件存储在/usr/share/keyrings目录下,文件名为docker - archive - keyring.gpg

4. 添加Docker软件源

  • 添加Docker软件源到系统的软件源列表中,这样系统就知道从哪里下载Docker软件包。
  • 执行命令: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
    在这里插入图片描述
  • 命令说明
    1. 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":这个命令用于生成要添加到软件源列表中的内容。
      • deb:表示这是一个Debian类型的软件源(Ubuntu是基于Debian的,所以使用deb)。
      • [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg]:指定了软件包的架构(通过dpkg --print-architecture获取当前系统的架构,如amd64arm64等)和用于验证软件包的GPG密钥文件路径。
      • https://download.docker.com/linux/ubuntu:是Docker软件包的下载地址。
      • $(lsb_release -cs):获取当前Ubuntu系统的发行版代号(如jammy),用于确定要下载哪个版本对应的软件包。
      • stable:表示要下载稳定版本的Docker软件包。
    2. sudo tee /etc/apt/sources.list.d/docker.list > /dev/nulltee命令用于将前面echo命令生成的内容写入到/etc/apt/sources.list.d/docker.list文件中。> /dev/null表示将tee命令的标准输出重定向到/dev/null(一个特殊的设备文件,用于丢弃数据),这样就不会在终端中显示多余的信息。

5. 安装Docker Engine

5.1 更新软件包列表

  • 执行命令:sudo apt -y update
    在这里插入图片描述
  • 再次执行sudo apt -y update是为了更新软件包列表,让系统能够识别刚刚添加的Docker软件源中的软件包。

5.2 安装Docker相关软件包

  • 执行命令:sudo apt -y install docker-ce docker-ce-cli containerd.io
    在这里插入图片描述
  • 软件包说明
    • docker - ce:是Docker社区版(Community Edition)的核心软件包,包含了运行Docker容器所需的基本组件。
    • docker - ce - cli:提供了用于操作Docker容器的命令行接口。
    • containerd.io:是一个容器运行时(container runtime),它是Docker架构中的底层组件,负责管理容器的生命周期等操作。

6. 验证Docker安装是否成功

6.1 查看Docker版本信息

  • 执行命令:docker version在这里插入图片描述
  • 执行命令:sudo update-alternatives --config iptables,注意类型选择:1
    在这里插入图片描述
  • 执行命令:docker version
    在这里插入图片描述

6.2 启动Docker

  • 执行命令:sudo service docker start
    在这里插入图片描述

6.3 配置镜像加速器

  • 执行命令:vim /etc/docker/daemon.json
    在这里插入图片描述
{"registry-mirrors": ["https://9871944d085e4817a11247169cc16509.mirror.swr.myhuaweicloud.com"]
}

6.4 运行一个简单的测试容器

  • 执行命令:docker run hello-world
    在这里插入图片描述
  • 这个命令会从Docker官方仓库中下载一个名为hello-world的测试容器并在本地运行。如果一切正常,终端会显示一些欢迎信息,表明Docker能够正常拉取和运行容器。

6.6 Docker拉取MySQL镜像

  • 执行命令:docker pull mysql:8.0
    在这里插入图片描述

7. 实战总结

  • 本次 Docker 安装实战从系统准备起步,先更新软件包与升级系统,接着安装关键依赖包以满足安全与协议需求,添加官方 GPG 密钥及软件源确保软件包正版可信与可获取。成功安装 Docker Engine 后,依次进行了安装验证,涵盖查看版本、启动服务、配置镜像加速器并运行测试容器。最后拉取 MySQL 8.0 镜像展示其应用场景。整体流程严谨有序,关键在于理解各步骤原理及作用,熟悉命令操作,为后续复杂的容器化应用部署筑牢根基,开启高效的 Docker 应用之旅。
http://www.lryc.cn/news/499241.html

相关文章:

  • ACM:均分纸牌
  • ThreadFactory
  • WEB开发: Node.js路由之由浅入深(一) - 全栈工程师入门
  • NES游戏机项目制作笔记(未完成)
  • 云服务器部署upload-labs-docker(文件上传靶场)环境 以及相关报错问题
  • Elasticsearch入门之HTTP基础操作
  • maven聚合项目部署到tomcat上
  • 基于Matlab生育模型和年龄别死亡率的未来人口预测与结构动态分析
  • 公共服务 kkFileView 4.1 文件预览 Docker 一键部署
  • 福昕PDF低代码平台
  • Ubuntu环境安装RabbitMQ
  • 集合ArrayList
  • C#怎么判断电脑是否联网
  • 软件体系结构复习-02 软件体系结构定位及构建
  • 鸿蒙获取 APP 信息及手机信息
  • Linux-V4L2摄像头应用编程
  • 掌握谈判技巧,达成双赢协议
  • Mysql - 存储引擎
  • 借助 CC-Link IE FB 转 Profinet 网关实现西门子 PLC 接入三菱 PLC 系统的解决策略
  • 未完成_RFdiffusion应用案例_从头设计pMHC的结合剂
  • python使用h5py保存数据
  • ubuntu24.04利用selenium控制浏览器的方法
  • Thonny IDE + MicroPython + ESP32 + 0.96寸OLED(IIC) 显示任意字符
  • centos7 扩容
  • FreeRTOS实现UART通信
  • 【从CURD到全栈成长】Java后端如何提升自己?
  • 动态计算加载图片
  • 利用R包QstFstComp包进行Qst-Fst分析
  • ASP.NET Core8.0学习笔记(二十五)——EF Core Include导航数据加载之预加载与过滤
  • ubuntu常用的设置