docker 入门2

Docker Desktop 的图形界面完成 Ubuntu 22.04 + ROS 2 Humble 镜像的拉取(避开命令行),我会给你一步到位的操作步骤,解决之前的网络问题,确保 100% 能拿到可用镜像。

核心思路

Docker Desktop 图形界面拉取镜像本质还是调用 docker pull 命令,所以先解决网络问题(配置国内镜像加速器),再通过界面操作拉取,全程不用敲命令。

步骤 1:先配置 Docker 镜像加速器(解决网络超时 / 解析失败)

这是关键前提,先搞定网络问题:

  1. 打开 Docker Desktop,点击顶部菜单栏的 Settings(齿轮图标)。

  2. 左侧菜单找到 Docker Engine(Docker 引擎)。

  3. 在右侧的 JSON 配置框中,找到 "registry-mirrors": [] 这一行,替换成以下国内镜像源(覆盖原有内容,保留其他配置):

    json

    复制代码
    {
      "builder": {
        "gc": {
          "defaultKeepStorage": "20GB",
          "enabled": true
        }
      },
      "experimental": false,
      "features": {
        "buildkit": true
      },
      "registry-mirrors": [
        "https://cr.console.aliyun.com",
        "https://mirror.ccs.tencentyun.com"
      ]
    }
  4. 点击右下角 Apply & Restart,等待 Docker Desktop 重启完成。

步骤 2:通过 Docker Desktop 图形界面拉取镜像

方法 A:直接搜索并拉取(推荐)
  1. 重启后,回到 Docker Desktop 主界面,点击顶部的 Images(镜像)标签。
  2. 点击右上角的 Search images 搜索框,输入:osrf/ros:humble-desktop-full(这是官方 Ubuntu 22.04 + ROS 2 完整镜像)。
  3. 按下回车,搜索结果会显示 osrf/ros 镜像,找到 humble-desktop-full 标签,点击右侧的 Pull(拉取)按钮。
  4. 此时 Docker Desktop 会自动开始下载镜像,底部会显示下载进度(Ubuntu 22.04 底层镜像 + ROS 2 约 4-5GB,耐心等待)。
方法 B:手动输入拉取命令(备用)

如果搜索框拉取失败,用 Docker Desktop 内置终端操作:

  1. 点击 Docker Desktop 顶部的 Terminal (终端)标签(或主界面左下角的 CLI 按钮)。

  2. 在弹出的终端窗口中,输入以下命令并回车: bash

    运行

    复制代码
    docker pull osrf/ros:humble-desktop-full
  3. 终端会显示下载进度,完成后回到 Images 标签就能看到该镜像。

步骤 3:验证镜像是否拉取成功

  1. 拉取完成后,回到 Docker Desktop 的 Images 标签页。
  2. 在镜像列表中搜索 osrf/ros,能看到 humble-desktop-full 标签的镜像(状态为 Exists),说明拉取成功。
  3. 点击该镜像右侧的 Run 按钮,直接启动容器,验证 ROS 2 环境:
    • 启动容器后,点击容器右侧的 终端图标(3 条横线)。
    • 在终端中输入 ros2 --version,输出 humble 即表示环境正常。

备用方案:图形界面构建自定义镜像(彻底绕开拉取)

如果以上拉取仍失败,直接在 Docker Desktop 中构建镜像(基于 Ubuntu 22.04 手动装 ROS 2):

  1. 新建一个文件夹(如 C:\ros2-build),里面创建 Dockerfile(内容和之前给的一致)。
  2. 打开 Docker Desktop,点击顶部的 Build(构建)标签。
  3. 点击 Build a new image ,选择 C:\ros2-build 文件夹,镜像标签填 ros2-humble:22.04,点击 Build
  4. Docker Desktop 会自动读取 Dockerfile 并构建镜像,完成后在 Images 中能看到 ros2-humble:22.04

总结

  1. 核心前提:先配置国内镜像加速器,解决网络解析 / 超时问题,这是拉取成功的关键。
  2. 图形界面操作 :通过 Images 标签搜索 → Pull 按钮,全程可视化,不用记命令。
  3. 验证要点 :拉取完成后,启动容器并执行 ros2 --version,确认输出 humble 即成功。

如果拉取时仍提示网络错误,优先切换到手机热点(避开公司 / 校园网络限制),或直接用「构建自定义镜像」的方式,完全绕开官方镜像仓库。

相关推荐
考虑考虑6 小时前
Mybatis实现批量插入
java·后端·mybatis
咖啡八杯7 小时前
GoF设计模式——中介者模式
java·后端·spring·设计模式
tntxia9 小时前
linux curl命令详解_curl详解
linux
青石路10 小时前
记一次多JDK版本问题的排查,一坑套一坑,差点没爬上来
java
扛枪的书生11 小时前
Linux 网络管理器用法速查
linux
像我这样帅的人丶你还13 小时前
Java 后端详解(五):Redis 缓存
java·后端·全栈
顺风尿一寸14 小时前
Java Socket 内核之旅:从 SocketChannel.read() 到 tcp_recvmsg 与 epoll 的完整调用链路
linux
plainGeekDev15 小时前
GreenDAO → Room
android·java·kotlin
jiayou6416 小时前
KingbaseES 表级与列级加密完全指南
数据库·后端
XIAOHEZIcode20 小时前
Ubuntu 终端美化全栈指南:Bash 到 Kitty 踩坑实录
linux·ubuntu·命令行