用于ARM和Debian的ROS Docker镜像

网友投稿 326 2022-10-22

用于ARM和Debian的ROS Docker镜像

​这里推荐两个链接:​

​1 ​​Using ROS with Docker in macOS: started with ROS and Docker:DR​:ARM和Debian对ROS的支持现在在官方DockerHub库中已经支持!

大家好!

您可能已经注意到,DockerHub开始支持amd64以外的其他架构[1]。所以扩展了dockerfile维护基础架构,用于官方的ROS映像,以支持arm。

此外,在重构时,还支持多种操作系统,即基于debian的ROS映像,同时也支持支持的ARM架构。要查看官方DockerHub库支持的套件,发行版和体系结构列表,您可以在此查看ROS的清单[2]:

​​github.com 5​​

​​搬运工库/官方镜像/ BLOB /主/库/ ROS​​

​​docker-library/official-images/blob/master/library/ros​​

# this file is generated via Tully Foote (@tfoote)GitRepo: Release: indigo######################################### Distro: ubuntu:trustyTags: indigo-ros-core, indigo-ros-core-trustyArchitectures: amd64, arm32v7GitCommit: 7ba58fc107b368d6409c22161070eb93e562f240Directory: ros/indigo/ubuntu/trusty/ros-coreTags: indigo-ros-base, indigo-ros-base-trusty, indigoArchitectures: amd64, arm32v7GitCommit: 7ba58fc107b368d6409c22161070eb93e562f240Directory: ros/indigo/ubuntu/trusty/ros-base

此文件已被截断。

​​显示全部​​

笔记:

添加了新标签,通过附加后缀指定操作系统套件

例如​​kinetic-ros-base-xenial​​,​​kinetic-ros-base-jessie​​

原始标签集没有变化,因为它们仍然指向同一个套件

例如​​kinetic​​<=>​​kinetic-ros-base​​<=>​​kinetic-ros-base-xenial​​另外对于​​amd64​​从osrf / ros自动回购托管的标记图像也是如此

​目前​,多架构ROS映像托管在独立的docker中心组织下

例如​​docker pull arm64v8/ros​​OR​​docker pull arm32v7/ros:indigo​​您可以参考​​/ros:​​具体拉一个给定的架构或尝试​​临时​​清单启用测试滚动回购:​​docker pull trollin/ros​​

​即将到来​,官方登记处将在内部谈判通过清单拉出的拱门

如果docker-engine主机是​​arm64v8​​,​​docker pull ros​​应该拉一个​​arm64v8​​图像

有一些构建脚手架可以跟随ROS的多架构图像构建

例如​​arm32v7 / job / ros 1​​​,​​arm64v8 / job / ros​​

这一切都是相当新的,所以如果你想开始学习更多,这里是一个相对较新的文章[3]:

​​developer.ibm.com 8​​

​​创建并使用多架构泊坞窗图像 - Linux on Power​​

现在已经有一段时间了,Docker社区一直在努力支持多种操作系统和架构的复杂性。以下是由于这种多样性而产生的两个关键问题:新的码头工程用户倾向于...

当然,如果你想玩任何一个手臂图像,但没有覆盆子或其他手臂的平台放在一起,你可以很容易地通过qemu-user和binfmt支持模拟。通过将必要的binfmt支持内核模块和qemu-user静态二进制文件安装到主机,您可以在arm环境中运行命令,例如在​​amd64​​工作站上。这可能需要您的debian binfmt支持包的即将到来的修补程序,具体取决于您的分发,因此应该遇到运行时问题,您可以按照​​这里的​​说明[4]。

例如:

$ sudo apt install qemu-user-static...$ uname -aLinux ubuntu 4.8.0-58-generic #63~16.04.1-Ubuntu SMP Mon Jun 26 18:08:51 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux$ docker run -it arm64v8/ros:lunar-ros-core-stretch uname -aUnable to find image 'arm64v8/ros:lunar-ros-core-stretch' locallylunar-ros-core-stretch: Pulling from arm64v8/ros774bc81cd4dd: Pull complete ...Digest: sha256:dd88dce3f840cc963a61881a1da4f36f1c66214dd1b0029fa433580a4f5a142fStatus: Downloaded newer image for arm64v8/ros:lunar-ros-core-stretchLinux a2a63cc39389 4.8.0-58-generic #63~16.04.1-Ubuntu SMP Mon Jun 26 18:08:51 UTC 2017 aarch64 GNU/Linux$ docker run -it arm64v8/ros:lunar-ros-core-stretch cat /etc/os-releasePRETTY_NAME="Debian GNU/Linux 9 (stretch)"NAME="Debian GNU/Linux"VERSION_ID="9"VERSION="9 (stretch)"ID=debian...

如果您发现图像有问题,请务必在这里打点票[5]:

​​github.com 2​​

​​osrf / docker_images​​

docker_images - 用于保存由OSRF维护的停靠点图像定义的存储库

也不要忘了分享我们的官方回购[6],所以其他人可能会发现它!

最好的

​​@ruffsl​​

[1] ​​/ ros 5​​

[3] ​​static-conf​​

[5] ​​buildfarm提供的,但我现在刻意地省略它:

​​i386​​Docker引擎的二进制文件不是由Docker官方发货或支持的​​i386​​ROS包的当前流量低于手臂的流量

​-----​

​-----​

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:SpringBoot JPA出现错误:No identifier specified for en解决方案
下一篇:Docker-删除untagged docker images
相关文章

 发表评论

暂时没有评论,来抢沙发吧~