从rootfs创build一个docker容器

我正在处理以下问题:

一个机器人有一个旧的Gentoo OS: Linux bob 2.6.33.9-rt31-aldebaran-rt #1 SMP PREEMPT RT Thu Aug 27 21:42:34 CEST 2015

问题:

  1. 我正在尝试为这个机器人构build一个工具链,这样我就可以使用gcc / g ++ 4.9或更高版本编译新的应用程序。
  2. 机器人不支持这个,空间有限。
  3. 我试图设置RPATH来复制较新的库版本,但涉及太多的问题,它没有工作,唯一的解决scheme是静态链接。
  4. 在我看来,我需要通过从机器人创build一个rootfs来构build应用程序。

所以我rsync'ed整个机器人操作系统到我的电脑。 现在我想构build一个docker镜像,以便我可以使用它来从头开始构buildgcc / g ++,而不会受到Robot的限制(它具有Intel(R) Atom(TM) CPU Z530 @ 1.60GHz ,1Gb的RAM和29Mb的硬盘可用)。

  • 我用rsync复制并保留所有属性,所有权等。
  • rootfs位于/home/alex/roots
  • 我知道我需要以root docker -t someorg/somename /home/alexrootfs

我的问题是(把我当作docker工人的小菜一碟):

  • 我需要运行在一个i686操作系统/ KVM,因为这是什么机器人操作系统运行?
  • 我需要在rootfs中的Dockerfile设置一些细节(例如/home/alex/rootfs/Dockerfile

有没有其他的提示,提示或问题谁曾经这样做过? 我想使用docker而不是chroot,因为这最终应该是构build机器人应用程序的自动化工具的一部分,但是build立在其他机器上。

提前谢谢了!

你需要在与机器人相同的架构上运行docker,是的。

如果你已经有一个完整的rootfs,那么Dockerfile看起来就像这样:

 FROM scratch ADD . / 

而且你会使用

 docker -t someorg/somename /home/alex/rootfs/