泊坞窗停止时运行脚本

我正在尝试使用dockerfile创builddocker容器,其中script-entry.sh将在容器启动时执行,script-exit.sh在容器停止时执行。

入口点帮助完成了script-entry.sh在启动时运行的第一部分问题。

我将如何确保在docker exit / stop上执行script-exit.sh?

docker stop将一个SIGTERM信号发送到在Docker容器内运行的主进程(入口脚本)。 所以你需要一种方法来捕捉信号,然后触发退出脚本。

请参阅此链接了解信号陷阱的解释和一个示例(接近页面末尾)

创build一个脚本,并将其保存为bash文件,其中包含以下内容:

 $CONTAINER_NAME="someNameHere" docker exec -it $CONTAINER_NAME bash -c "sh script-exit.sh" docker stop $CONTAINER_NAME 

运行该文件,而不是运行docker stop ,这应该做的伎俩。 你也可以设置一个别名。

至于Docker自身内部的自动化,我以前从来没有见过。 祝你好运,如果这是你想要的道路。