【发布时间】:2017-09-24 19:29:42
【问题描述】:
我使用以这个命令开头的mysql image
docker run --name test-mysql -e MYSQL_ALLOW_EMPTY_PASSWORD=yes -d -p 3306:3306 mysql
当 docker 在后台运行时,另一个应用程序大约需要一分钟才能连接到端口 3306。
之后我用docker stop test-mysql 停止这个容器,然后用docker start test-mysql 启动它。在第二种情况下,使用 start 命令,应用程序可以在 5 秒后连接到端口 3306。
现在我使用 docker commit test-mysql mysql2 从停止的容器中拍摄快照,并使用 docker run -d mysql2 运行它,但在这种情况下,应用程序可以在一分钟后连接到 mysql2!
所以,
停止的容器会发生什么,可以在 5 秒内启动并负责,但 mysql 映像无法做到?
有没有什么办法可以在容器运行后拍摄快照,可以在 10 秒内负责?
注意:Mysql 映像有一个入口点,需要一分钟以上才能启动。
【问题讨论】: