入口点周围的Docker安全问题

我正在尝试使用Docker并理解使用卷的概念。 我有一个将文件写入特定卷的tomcat应用程序。

我写了一个入口ENTRYPOINT为“ ENTRYPOINT ”的ENTRYPOINT

我有入口点脚本的问题是..

在“ dosomething.sh ”中,我可能有一个恶意代码来删除卷上的所有文件!

有没有办法来防止它,特别是因为,我打算与我的开发团队共享这个dockerfile和脚本,我必须把生产angular色的照顾看起来吓人!

一个想法是,对于所有有容量的容器,都不要有“ ENTRYPOINT ”。
有经验的人,请告诉你如何处理这个…

如果你正在使用数据卷容器隔离你的卷,那么这个容器永远不会运行:它们只被创build( docker create )。

这意味着您需要将该数据卷容器挂载到其他容器中,以便访问该容器。
这可以缓解一些危险的入口点:一个简单的docker运行将无法访问,因为没有设置-v挂载卷选项。

另一种方法是至less将脚本声明为CMD ,而不是ENTRYPOINT (并且将ENTRYPOINT[ "/bin/sh", "-c" ] 。这样,使用替代命令作为参数,覆盖CMD ),而不必仅仅因为它是一个ENTRYPOINT始终执行脚本。