连接被拒绝在OSX上的Docker应用程序

我搞错了Docker(使用Docker Toolbox for OSX),似乎无法让我的应用程序工作。 这是一个简单的烧瓶应用程序,看起来像这样:

from flask import Flask app = Flask(__name__) @app.route('/') def index(): return 'Hello World!' if __name__ == '__main__': app.run() 

现在我的Dockerfile包含以下内容

 FROM python:2.7.11-wheezy ADD ./application/* /opt/local/application/ ADD ./project-requirements.txt /opt/local/application/requirements.txt RUN pip install -r /opt/local/application/requirements.txt CMD ["/usr/local/bin/python", "/opt/local/application/app.py"] EXPOSE 5000 

我通过运行docker build -t python_app .构build容器docker build -t python_app . 然后通过运行docker -i -P python_app来启动容器,并看到应用程序是在容器内启动的,因为该命令的输出是* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)

现在,当我运行docker ps我可以看到容器正在运行

 CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 448defb349ce python_app "/usr/local/bin/pytho" About a minute ago Up About a minute 0.0.0.0:32769->5000/tcp angry_jang 

但是,当我试图curl的容器,我得到一个连接拒绝错误。

 $ curl $(docker-machine ip default):32769 curl: (7) Failed to connect to 192.168.99.100 port 32769: Connection refused 

我不知道我要去哪里错了,任何帮助非常感谢!

我发现这个问题,我不得不改变

 app.run() 

 app.run(host='0.0.0.0') 

app.py文件中。