我可以在Windows(64位)的Docker上运行ARM镜像(例如,hypriot / rpi-node),但是在我试过的所有Linux x86 / 64机器上(Debian,CoreOS,Alpine等)错误 – 这对我有意义,但我不明白为什么它会在Windows上的Docker中运行,我不知道是否错过了一些使用x86机器作为ARM图像构build服务器的机会(即在谷歌/ aws云/azure)。 任何想法我可能能够吗?
docker run -ti hypriot/rpi-node ls standard_init_linux.go:175: exec user process caused "exec format error"
“exec格式错误”确认您没有在正确的架构上运行Docker镜像。 我曾尝试在Raspberry Pi 2上运行x86 docker镜像(与ARM体系结构一起工作),但发生此错误。 我相当肯定,当你这样做的时候可能会出现同样的错误。
所以,Kulti说,Windows / MAC必须启动一个ARM Linux VM。 如果您希望在Linux上使用ARM docker映像,则可能需要手动尝试运行linux docker VM。 我认为你甚至可以在linux上使用“docker-machine”来实现: docker-machine的Docker文档 。 (没有自己做,所以我不确定)
希望这可以帮助。
在Windows和Mac上,Docker在Linux VM下工作。 所以,我认为,为Windows下的容器启动ARM Linux VM。 但在本地Linux使用本地架构。