Docker在从图像创建容器时显示出不一致的行为



我正在开发一个依赖于moodle系统的web应用程序,因为它使用moodle web服务。对于我的自动化测试,我想使用docker在我的所有机器上提供一个预配置的moodle应用程序。因此,我创建了一个docker图像,并从.tar.gz文件导入该图像。

但是,从此映像创建新容器实例的行为不一致。有时容器正确启动,一切正常。然而,有时容器启动,但moodle网站无法访问。如果我使用docker exec -it <container> bash将bash连接到容器,我会看到apache正在运行。错误日志没有显示任何可能与此问题有关的条目。

如果我杀死容器实例并再次启动它,一切都会按预期进行(有时这个步骤必须重复多次)。你知道这种奇怪行为的原因是什么吗?有人遇到类似的问题吗?

Docker在Ubuntu 14:04上运行。问题出现在几台机器上。导入图像并启动容器的脚本如下所示:

#!/usr/bin/env bash
docker rm -f moodle
docker load < my-moodle.tar.gz
docker run -d -p 8080:80 -p 8443:443 -p 3306:3306 --name moodle moodle-image

提前感谢!

成功的容器启动取决于容器入口点和外部资源(如果入口点具有外部依赖项)。入口点是什么?它依赖外部资源吗?

最新更新