Ubuntu20.04内安装Docker并在Docker内安装 ROS Melodic

这篇具有很好参考价值的文章主要介绍了Ubuntu20.04内安装Docker并在Docker内安装 ROS Melodic。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一. 在 Ubuntu 20.04 中安装 Docker

  1. 阿里云一键安装

  2. 手动安装步骤

2.1 卸载老旧版本

2.2 安装环境依赖

2.3 安装 GPG 证书

2.4 设置存储库

2.5 安装 Docker

2.6 验证安装是否成功

2.7 安装 Dockers 网页管理

二. 在 Docker 内安装 ROS(Melodic)

1. 安装 Melodic

2. 构建通用环境依赖

3. 在镜像中创建容器

4. 正式使用 Ros Melodic 环境

三. 在 Docker 中使用 Vscode 开发

1. 在 vscode 安装 docker 插件

2. 启动 Docker 容器

3. 使用 vscode 连接 docker 进行开发工作


背景:

由于当前使用的是 Ubuntu20.04 系统,而开发环境需要使用 Ubuntu18.04 + ROS(Melodic),为了方便安装配置,在 Ubuntu20.04 里安装 Docker环境,再在 Docker 中安装 ROS(Melodic)来解决环境问题,为了写代码方便还需要配置 Docker 环境支持 VsCode 远程编码和调试。

一. 在 Ubuntu 20.04 中安装 Docker

  1. 阿里云一键安装:

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

  2.手动安装步骤:  

  2.1 卸载老旧版本
sudo apt-get remove docker docker-engine docker.io containerd runc
  2.2 安装环境依赖
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg lsb-release
  2.3 安装 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
 2.4 设置存储库
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
2.5 安装 Docker
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin
2.6 验证安装是否成功
sudo docker run hello-world

ubuntu 20.04.6安装docker,ROS,docker,容器,vscode,c++
如果出现如下信息则安装成功。

2.7 安装 Dockers 网页管理
# 安装 Portainer
sudo systemctl restart docker
sudo docker pull portainer/portainer
sudo docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock --restart=always --name prtainer portainer/portainer
# 运行上述命令后,放行防火墙,访问本机的9000端口进入Portainer,创建账号密码之后即可登录到控制台。
# 参考 https://blog.csdn.net/qq_40695642/article/details/117607446

ubuntu 20.04.6安装docker,ROS,docker,容器,vscode,c++

二. 在 Docker 内安装 ROS(Melodic)

1. 安装 Melodic

sudo docker pull osrf/ros:melodic-desktop-full

2.构建通用环境依赖

# Dockerfile 内容:

# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
FROM osrf/ros:melodic-desktop-full

# nvidia-container-runtime
ENV NVIDIA_VISIBLE_DEVICES \
    ${NVIDIA_VISIBLE_DEVICES:-all}

ENV NVIDIA_DRIVER_CAPABILITIES \
    ${NVIDIA_DRIVER_CAPABILITIES:+$NVIDIA_DRIVER_CAPABILITIES,}graphics

RUN apt-get update && \
    apt-get install -y \
    build-essential \
    libgl1-mesa-dev \
    libglew-dev \
    libsdl2-dev \
    libsdl2-image-dev \
    libglm-dev \
    libfreetype6-dev \
    libglfw3-dev \
    libglfw3 \
    libglu1-mesa-dev \
    freeglut3-dev \
    vim
# <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

# 创建 ROS 镜像
docker build -f Dockerfile -t MyDocker .

# 查看创建的镜像
sudo docker images

3.在镜像中创建容器

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=catkinDocker MyDocker:latest /bin/bash

'其中参数 -v$(pwd):/data 是指将 ‘当前目录’ 挂载到ROS容器根目录data文件夹下,可以用来和宿主机进行文件交换'

# 查看容器ID及状态:
sudo docker ps -a

# 终端进入容器,并打开 roscore:
sudo docker exec -it your-docker-id /bin/bash
roscore

# 如果 roscore 运行正常,表示 melodic 安装成功,按 ctrl + c 退出 roscore
# 设置进入时加载 ROS 环境:
  sudo vi ~/.bashrc

# 在最后一行加入 source /opt/ros/melodic/setup.bash
# 找到 force_color_prompt=yes, 去掉前面的‘#’开启颜色显示。
ubuntu 20.04.6安装docker,ROS,docker,容器,vscode,c++

4.正式使用 Ros Melodic 环境
# 查看容器
  docker ps -a 

# 启动容器
  docker start container_id
  进入容器后,执行:roscore

# 另开一个终端
  docker exec -it container_id /bin/bash
  进入容器后,执行: rviz

ubuntu 20.04.6安装docker,ROS,docker,容器,vscode,c++

ubuntu 20.04.6安装docker,ROS,docker,容器,vscode,c++

三. 在 Docker 中使用 Vscode 编码开发

1. 在 vscode 安装 docker 插件

      &   2. 启动 Docker 容器

docker start container_id

3. 使用 vscode 连接 docker 进行开发工作

ubuntu 20.04.6安装docker,ROS,docker,容器,vscode,c++
点击 vscode 左下角的远程连接图标,弹出如上界面,选择 “附加到正在运行的容器...”,
ubuntu 20.04.6安装docker,ROS,docker,容器,vscode,c++
在弹出的选择对话框中选择对应的 Docker 容器,等待连接上 Docker 后,就可以开始编写代码了。

本人的使用感受:Dockers 里的 vscode 的速度相对于本机慢了一些。文章来源地址https://www.toymoban.com/news/detail-810407.html

到了这里,关于Ubuntu20.04内安装Docker并在Docker内安装 ROS Melodic的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【ROS】在 Ubuntu 20.04 安装 ROS 的详细教程

    由于自己装过两次 ROS,但是重头再来一遍还是遇到了很多困难。尤其是当遇到以前遇到过的问题,我依然会手足无措,翻边互联网的边边角角,试很多遍错才能解决问题。于是便萌发了写下这个 ROS安装指南 的想法。 这里整理了我安装 ROS 的流程以及遇到的所有问题,也提供

    2024年02月03日
    浏览(67)
  • Ubuntu20.04同时安装ROS1和ROS2

    每版的Ubuntu系统版本都有与之对应ROS版本的,每一版ROS都有其对应版本的Ubuntu版本,不可随便装,ubuntu20.04对应ROS1 noetic和ROS2 foxy版本。_ros1和ros2共存 文章目录 Ubuntu20.04同时安装ROS1和ROS2共存 一、换源 1.1 通过软件更新 1.2 通过修改源文件(建议) 二、安装ROS1(noetic) 三、安

    2024年02月09日
    浏览(53)
  • Ubuntu20.04同时安装ROS1和ROS2共存

    每版的Ubuntu系统版本都有与之对应ROS版本的,每一版ROS都有其对应版本的Ubuntu版本,不可随便装,ubuntu20.04对应ROS1 noetic和ROS2 foxy ROS2 Galactic版本。当然最方便的是使用鱼香ROS一键安装: 但我们接下来使用手动安装。 老规矩,先换源 打开软件更新 选择Download from-Other,找到C

    2024年02月08日
    浏览(34)
  • ROS Neotic(Ubuntu 20.04)如何正确安装OpenCV

    鱼香ROS提供了一个全面且方便的脚本,可以直接运行来安装系统对应版本的ROS,同时也可以使用该命令来安装许多有趣的东西 本文安装的为无contrib版本的OpenCV GitHub OpenCV 项目地址 在源代码的目录下依次执行上方的命令,第四步cmake的过程中可以增加相关的参数来自定义Open

    2024年02月05日
    浏览(32)
  • ubuntu20.04一键安装VScode搭建ROS编程环境

    VSCode 全称 Visual Studio Code,是微软出的一款轻量级代码编辑器,免费、开源而且功能强大。它支持几乎所有主流的程序语言的语法高亮、智能代码补全、自定义热键、括号匹配、代码片段、代码对比 Diff、GIT 等特性,支持插件扩展,并针对网页开发和云端应用开发做了优化。

    2023年04月24日
    浏览(41)
  • Ubuntu20.04+Docker+ROS Noetic 可视化容器管理工具Portainer

    官网教学安装网址:Install Docker Engine on Ubuntu | Docker Documentation ros镜像网址 https://hub.docker.com/r/osrf/ros https://hub.docker.com/r/osrf/ros/tags 3.1 宿主机开启xhost,使得docker里面可视化界面(vscode rviz)  注意:每次重启容器,主机都得执行一遍,否则容器内可视化报错。 3.2 创建宿主机数

    2024年02月12日
    浏览(51)
  • Ubuntu20.04安装ROS1+PX4+MAVROS+QGC

    目录 1. 一键安装ROS1 2. 安装PX4 3. 添加变量 4. 安装MAVROS  5. 测试MAVROS与PX4是否连接 6. 安装QGC 参考  (参考鱼香ROS大佬:小鱼的一键安装系列)  输入1,安装 ROS,后面就按照推荐的来 ROS1安装完成 ,进行小海龟测试 打开终端,运行 另外打开一个终端,输入  再另外打开一个

    2024年01月20日
    浏览(51)
  • Ubuntu20.04的ROS环境安装ORB-SLAM3详解

    视觉SLAM实验要在Ubuntu20.04系统上使用ROS跑ORB-SLAM3,熟悉一下特征点法的SLAM,把安装过程总结记录下来。 系统 版本 ubuntu 20.04 Pangolin 0.6 Eigen 3 Opencv 4.2 usb_cam 执行命令更新源 1、ROS简介 ROS全称Robot Operating System(机器人操作系统) ROS是适用于机器人的开源元操作系统 ROS集成了大

    2023年04月21日
    浏览(59)
  • DELL戴尔Win10双硬盘安装Ubuntu20.04双系统(附带ROS安装教程)

    先说一下自身情况,设备是一台戴尔灵越7591,原装一根256g固态硬盘安装Win10系统,需要双系统安装ubuntu系统,故加装了一根500g固态,其中100g分配给Win10作扩展,其余400g分给ubuntu系统。本人在网上搜集了许多资料,收集大量前人踩到的坑,站在巨人肩膀上一次通关,后期应该

    2023年04月09日
    浏览(56)
  • ubuntu20.04安装ROS出现E: 无法定位软件包 ros-noetic-desktop-full

    只是对自己解决问题的过程进行记录。 按照这篇文章进行操作。 ROS安装与报错的解决办法_e: 无法定位软件包 ros-noetic-desktop-full_几度春风里的博客-CSDN博客完成添加密钥步骤后: 进行更新: 然后安装对应版本的ROS 就成功解决了。

    2024年02月08日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包