记录 Docker 中安装 ROS2

2023-12-28 12:40:57

目录

?1? 安装 Docker

?2? 安装 ROS2

?3? 启动 Docker

?4? 测试 ROS2 环境


1? 安装 Docker

1. 更新软件包
   sudo apt update
   sudo apt upgrade

2. 安装 docker 依赖
   sudo apt-get install ca-certificates curl gnupg lsb-release

3. 添加 docker 官方 GPG 密钥
   curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -

4. 添加 docker 软件源
   sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"

5. 安装 docker
   sudo apt-get install docker-ce docker-ce-cli containerd.io

6. 配置用户级
   sudo usermod -aG docker $USER
   # 默认情况下,只有 root 用户和 docker 组的用户才能运行 docker 命令。
   # 可以将当前用户添加到 docker 组,以避免每次使用 docker 时都需要使用 sudo。

7. 激活对 docker 组的更改
   newgrp docker 
   groups

8. 测试 docker 是否安装成功
   docker image ls   # 查看 docker 中已有的镜像
   docker ps -a      # 查看 docker 中已有的容器

9. 查看 docker 安装的状态
   sudo systemctl status docker

?2? 安装 ROS2

1. 搜索 ubuntu下的 ROS2 镜像
   docker search ubuntu22.04
   # 或者
   docker search ros2
   # 我的电脑搜索后,出现了如下满足我要求的条目:
   ryuichiueda/ubuntu22.04-ros2                                                                                               

2. 从 docker 仓库拉取镜像
   docker pull ryuichiueda/ubuntu22.04-ros2

3. 再次查看 docker 中已有的镜像
   docker image ls
   # 列表中出现了类似如以下一条信息,表示 ROS 拉取成功 :
   ryuichiueda/ubuntu22.04-ros2   latest    85a433146260   13 months ago   3.8GB

?3? 启动 Docker

1. 进入需要与 docker 关联的目录
   cd ~/MyROS2

2. 启动 ROS2 命令行:
   xhost + sudo docker run -it -v$(pwd):/data \
           --device=/dev/dri \
           --group-add video \
           --volume=/tmp/.X11-unix:/tmp/.X11-unix \
           --env="DISPLAY=$DISPLAY" \
           --name=MyROS2 ryuichiueda/ubuntu22.04-ros2 /bin/bash
 
   '参数 -v$(pwd):/data 是指将 ‘当前目录’ 挂载到 ROS2 容器根目录 data 文件夹下,
    可以用来和宿主机进行文件交换'

?4? 测试 ROS2 环境

# 启动 ROS2 之后,执行下面的命令,测试 ROS2 环境
  ros2 run turtlesim turtle_teleop_key

? 输出结果如下所示:

文章来源:https://blog.csdn.net/wxl5018/article/details/135223200
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。