Flask + Docker app - 当我 运行 docker 运行 时容器死亡

Flask + Docker app - The container dies when i run docker run

我有一个带有 Dockerfile + docker-compose 的应用程序。

Docker文件 docker-compose.yml

我有一个 CI,它从我的 docker 文件创建图像并将其发送到 hub.docker

Travis.yaml

当我将此图片放到我的 cloud 服务器上时,我无法通过 运行 执行以下命令 运行 此图片:

docker run -d -p 80:80 flask-example

因为容器死了。

除了travis编译后从hub.docker下载的图片,我的服务器还需要docker-compose吗?执行命令:

docker-compose up -d

要运行申请?或者有其他方法吗?

谢谢大家。

运行宁 docker 与 -d 标志分离你的容器,这意味着它 运行 在后台。 因此,您看不到错误。只需删除此标志,您就会明白它为什么要死了。

从 link 到您的 docker-compose 文件,端口 80 似乎已被使用(由 frontend 容器使用),所以也许您可以尝试使用其他端口? (例如:docker run -d -p 8080:80 flask-example

第二,你说得对。 docker-compose 只是 运行 容器的另一种方式。您不必同时使用两者。