dockerised应用程序可以在主机上执行脚本吗?

如果我有一个应用程序在Docker容器中运行,是否有可能让它在主机上执行一个shell脚本? 我很确定没有办法达到这个目的,这就是容器的性质 – 但是要检查。 谢谢。

编辑:如果失败了,是否有一种方式让应用程序与在主机上运行的docker引擎进行交互,以便可以触发其他容器的“docker stop”“docker run ..”等。

那么从技术上来说呢 进程在主机上运行,​​即使从容器内运行。 您可以在主机上以root运行ps aux时validation这一点:您将看到dockerized进程。

问题是:你的脚本应该和系统有什么交互作用? 如果将文件作为input,访问数据库或networking资源,则所有这些都可以用于docker化脚本。 你只需要定义卷和链接。

关于docker引擎:是的,容器也可以控制自己的docker引擎。 您只需将其添加到docker命令:

 -v /var/run/docker.sock:/var/run/docker.sock 

这样,docker客户端(容器内)将有权访问docker引擎(通过dockerAPI)。