在OS X上使用Docker模拟Raspberry Pi

4
我一直在做很多树莓派的工作,但这意味着我必须携带我的Pi(或SSH回家),而且Pi不是世界上最快的。我一直在使用Docker来运行像Postgres这样的东西,并且认为只需下载Debian Jessie的ARM构建的Docker镜像,就可以使所有功能都像实际运行在真正的rPi上一样。如果我可以快速将其镜像到SD卡并将其放入真正的rPi中,那就更好了。
有人探索过这个问题吗?我找到的所有内容都是关于在rPi上运行Docker,而不是运行Docker来模拟rPi。

Docker不是虚拟机或仿真环境。Docker容器在与主机机器相同的操作系统上运行,与主机进程或其他容器隔离。 - Panagiotis Kanavos
https://dev59.com/D1sX5IYBdhLWcg3wPdjn - hrbrmstr
Panagiotis Kanavos - 你能告诉我更多关于这个吗?我在 OS X 上运行了几个 Linux 容器(使用 virtualbox 和/或系统级超级管理程序),所以我认为存在一定程度的仿真和虚拟机。这就是为什么我认为这是可能的原因。 - tibbon
2
这看起来更像是你要找的:它使用QEMU在OS X上模拟ARM,放在Docker容器中:https://hub.docker.com/r/ryankurte/docker-rpi-emu/ - Anthony Hall
2018年的答案是否与现在不同? - tibbon
1个回答

2
基于对类似问题的回答和评论 - 比如这个关于树莓派堆栈交换网站的问题,我认为“不能”是短暂的答案(或者至少需要付出很多努力)。
你的问题在于,正如评论中提到的那样,Docker不进行全面虚拟化(这是它的重点),因此你无法获取ARM Raspbian Docker镜像并在x86 Virtualbox主机上运行它 - 这听起来就像你想做的事情。
Docker镜像需要为与主机系统相同的架构构建。如果您尝试在树莓派充当Docker主机时运行x86 Docker镜像,则会遇到相同的问题。
作为一个解决方案 - 我建议在您的Mac上运行Debian VM。Raspbian接近Debian,您将拥有一个相当“类似Pi”的环境进行开发,并且可以在完成后将代码复制到SD卡中。
如果您想要一种简单的方法来管理配置,以便核心数,RAM,磁盘空间等与您的Pi匹配,则Vagrant可能是一个不错的解决方案。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接