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 即成功。

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

相关推荐
2401_8920709819 小时前
【Linux C++ 日志系统实战】LogFile 日志文件管理核心:滚动策略、线程安全与方法全解析
linux·c++·日志系统·日志滚动
XDHCOM20 小时前
ORA-32484重复列名错误,ORACLE数据库CYCLE子句故障修复与远程处理方案
数据库·oracle
云烟成雨TD20 小时前
Spring AI Alibaba 1.x 系列【6】ReactAgent 同步执行 & 流式执行
java·人工智能·spring
lwx91485220 小时前
Linux-Shell算术运算
linux·运维·服务器
于慨20 小时前
Lambda 表达式、方法引用(Method Reference)语法
java·前端·servlet
swg32132120 小时前
Spring Boot 3.X Oauth2 认证服务与资源服务
java·spring boot·后端
翻斗包菜20 小时前
PostgreSQL 日常维护完全指南:从基础操作到高级运维
运维·数据库·postgresql
somi720 小时前
ARM-驱动-02-Linux 内核开发环境搭建与编译
linux·运维·arm开发
gelald20 小时前
SpringBoot - 自动配置原理
java·spring boot·后端
殷紫川20 小时前
深入理解 AQS:从架构到实现,解锁 Java 并发编程的核心密钥
java