作者:汤侑亦_473 | 来源:互联网 | 2022-12-11 16:29
我正在将一个烧瓶服务器部署到Digital Ocean droplet.
from flask import Flask
app = Flask(__name__)
@app.route("/a/")
def deploy(b):
return "Response"
使用以下命令:
FLASK_APP=server.py python -m flask run --host=0.0.0.0 --port=5555
当我在本地部署应用程序时,我可以通过执行来收到响应
curl -XGET localhost:5555/a/random
在Droplet上部署时,它在内部工作,但在外部调用Droplet时(尽管在TCP上暴露了端口5555),它无法连接.
有什么可以改变的?我也正在通过docker在同一个Droplet上部署一个烧瓶graphql服务器,它工作得很好.
1> Samuel Chen..:
使用VPS时,这可能是一个常见问题.如果代码正确,像我这样的人可能经常忘记设置防火墙.
你提到它在本地工作但不在外部工作.我想它应该是.
数字海洋水平:
在Droplet防火墙设置中添加入站TCP端口5555
系统级别
iptables:例如 iptables -A INPUT -p tcp -dport 5555 -j ACCEPT
firewalld:例如 firewall-cmd --permanent --zOne=public --add-port=5555/tcp
或者您可以通过systemctl stop [service-name]
或禁用操作系统防火墙service [service-name] stop
.你可以谷歌命令.