如何实现Multi-Arch-Docker Image构build的自动化

我已经在github上docker化了一个nodejs应用程序。 我的Dockerfile基于正式的nodejs图像。 官方的node-repo支持多种体系结构(x86,amd64,arm)。 这意味着我可以在不同的机器上构build完全相同的Dockerfile,从而为相应的体系结构创build不同的映像。

所以我正试图为我的应用程序无缝地提供相同的体系结构。 但是,如何? 我的目标是尽可能自动化。 我知道我理论上需要创build一个docker-manifest,它充当docker-repo并将最终用户docker-clientredirect到合适的映像。

Docker-Hub本身可以监视一个github仓库,并启动一个自动构build。 这将照顾amd64图像。 但是剩下的架构呢? 还有一种叫做“TravisCI”的服务,我想可以在qemu的帮助下照顾arm的搭build。 那么我认为这两个回购可以通过清单回购静态引用。 但是这仍然留下了一些未完成的架构。

但是使用多种服务/构build相同的应用程序的方式感觉不对。 有没有人知道一个更好,更完整的解决这个问题? 它基本上是通过几台机器运行相同的dockerfile并将其logging在清单中。