我是容器新手,所以我会尽可能详细地解释我的问题。
我在Kubernetes代理上运行了一个Jenkins流,它构建了一个Docker映像并将其推送到存储库。我想修改Jenkins流程,以便在推送到存储库之前对映像进行测试(一些功能测试)。我在Github https://github.com/GoogleContainerTools/container-structure-test上找到了这个项目,它很方便测试,但不幸的是,它需要Docker守护进程,而我的Kubernetes代理上不可用。
以前有人试过吗?或者有人知道什么解决办法吗?谢谢!
我尝试在我用于Kubernetes代理的pod中包含一个docker容器,创建一个单独的测试文件,并使用该容器为映像运行测试(不使用Github项目)。然而,Docker守护进程的缺失也是问题所在。
对于在kubertes代理上运行Jenkins中的容器,您可以在Docker代理中使用Jenkins Docker或Jenkins Podman代理,这是一个无容器的Docker替代品,使用相同的cli。
然后,将测试封装在容器映像中,并在上述任意一个代理中运行它们。
免责声明:以上文章是我写的。
还要注意,对于您提到的项目,有一个不使用docker daemon
的选项。使用tar
驱动程序代替。