我正在通过 Vagrant 在我的本地机器上运行一个应用程序。 Python/Flask 应用启动并打印:
* 在 http://127.0.0.1:5000/上运行
*重新启动重新加载
我找到了这个 https://github.com/makersquare/student-dev-box/wiki/Using-Vagrant-for-Development#testing-web-based-applications-in-vagrant
这表明 Vagrant 应用程序在 10.10.10.10
(而不是 127.0.0.1
)上运行,但是当我导航到该 IP 地址(端口 5000)时,我得到了相同的结果: “此网页不可用”。
问题:我的应用程序正在运行,但 IP 地址是什么?我好像找不到。是否需要修改一些配置文件?
提前致谢。
最佳答案
有很多方法可以在虚拟机(由 vagrant 管理)上运行 flask web 应用程序。我认为以下方法非常灵活,因为您不必处理不同的 ip 地址。而且看起来您正在主机上进行开发。
您需要配置两件事。在VagranFile中,您需要配置端口转发。
Vagrant.configure(2) do |config|
# use default box
config.vm.box = "ubuntu/trusty64"
# forward port guest machine:5000 -> host machine:5000
# port 5000 is default for flask web app
config.vm.network "forwarded_port", guest: 5000, host: 5000
end
然后,在虚拟机上,您应该在 ip 0.0.0.0
上启动 flask 应用程序,这意味着网络应用程序将为任何 IP 地址提供服务。有关此主题的更多信息 -> flask doc 外部可见服务器
if __name__ == "__main__":
app.run("0.0.0.0", debug=True)
就是这样。您应该能够连接到 http://localhost:5000
关于python - Vagrant,Flask — 应用程序未在 10.10.10.10、127.0.0.1 上运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29088056/