首页 > 解决方案 > 在运行 MySQL 服务器的情况下重新运行在 docker-compose 中启动的 Python 脚本

问题描述

使用docker compose我为我的 MySQL DB 创建了一个容器,并为我的 Python 脚本创建了一个容器。当我使用 commanddocker compose up时,我的图像是为我的 Python 应用程序容器和我的 MySQL DB 容器构建的,并且运行 python 脚本。执行后,由于 MySQL 服务器仍在运行并且我的脚本已完成执行,因此 shell 会挂起。如何在我的脚本运行后停止 MySQL 服务器,或者在 MySQL 服务器继续运行时重新运行我的脚本?

标签: pythonmysqldocker

解决方案


运行时,您当前的 shell 将显示文件docker-compose up中定义的所有容器的所有日志。docker-compose.yaml此外,如果您cmd + c在 MacOS 中终止命令,所有容器都将停止运行。

结果,这给您的印象是,shell 只是挂起,而一切仍在正常运行。

在这种情况下,您想要的是让容器继续在后台运行(分离模式

docker-compose up --detach

MySQL 服务器现在将继续运行,直到您使用docker-compose down.


推荐阅读