Pycharm Docker端口绑定

Nic*_*las 8 pycharm docker

我正在Docker容器中运行一个烧瓶应用程序,所以我需要绑定主机和容器端口(在这种情况下,两者都是端口5000).

运行此命令:

docker run -v //c/Users/Nicholas/PycharmProjects/flask_tutorial:/opt/project -e "FLASK_APP=/opt/project/flaskr.py" -p 0.0.0.0:5000:5000 flask flask run --host=0.0.0.0
Run Code Online (Sandbox Code Playgroud)

旋转容器,我可以在浏览器本地访问127.0.0.1:5000的应用程序.然而,在将这些相同的设置输入到Pycharm(2016.2.3)运行配置GUI并启动容器后,我无法访问该应用程序(我尝试勾选"发布所有端口"选项无效):

pycharm docker运行配置

使用docker inspect container_id命令行创建的容器,我在NetworkSettings下获得这些设置:

"Ports": {
    "5000/tcp": [
        {
            "HostIp": "0.0.0.0",
            "HostPort": "5000"
        }
    ]
},
Run Code Online (Sandbox Code Playgroud)

但是使用Pycharm运行配置创建容器时,它似乎没有传递端口绑定:

"Ports": {},
Run Code Online (Sandbox Code Playgroud)

有没有办法检查Pycharm传递给Docker的选项?或者使它正确传递端口绑定选项?

我在Windows 10上,Docker在Hyper-V上运行(不是VirtualBox)

gCo*_*Coh 2

对我来说,在应用程序对象运行调用中添加 localhost IP('0.0.0.0')作为 arg 解决了这个问题

app.run(host='0.0.0.0')
Run Code Online (Sandbox Code Playgroud)