[英]Unable to run Python flask app in different port using docker-compose
我正在使用 docker-compose 在 Python 中运行 Flask 应用程序。 我能够使用 5000 端口运行 Flask 应用程序。 除了在 5000 上运行的另一个 Flask 应用程序之外,我正在尝试在 6000 上运行它。但我无法在 6000 端口上运行它。 任何帮助,将不胜感激。
docker-compose.yml
version: '3.8'
services:
web:
build: ./web
ports:
- "6000:5000"
应用程序.py
if __name__ == '__main__':
app.run(host='0.0.0.0', port=5000, debug=True)
Dockerfile:
FROM python:3
COPY . /app
WORKDIR /app
RUN pip install -U pip
RUN pip install -r requirements.txt
ENTRYPOINT ["python"]
CMD ["app.py"]
要求.txt
Flask==1.1.1
端口 6000 正在侦听。 我可以通过使用主机和端口执行 nc 命令来成功连接。
我无法在端口 6000 上运行该应用程序。
当我在浏览器中点击 http://#{HOST_IP}:6000 时,我得到了以下信息
This site can’t be reached
The web page at http://#{HOST_IP}:6000/ might be temporarily down or it may have moved permanently to a new web address.
6000
是不安全的端口,这就是浏览器不允许访问应用程序的原因。
如何修复错误-不安全端口-chrome-when-browsing-to-unsafe-ports
但是你不应该允许这个端口,只是尝试发布另一个端口。
version: '3.8'
services:
web:
build: ./web
ports:
- "5001:5000"
对于downvoter
这是Github 回购来验证这一点
git clone https://github.com/Adiii717/dockerize-flask-app.git
cd dockerize-flask-app/
# this will not work in the browser
PORT=6000 docker-compose up
您还没有定义任何路线。 应用服务器不知道哪些路由可用,也不知道您要返回什么,因此您需要指定它。
这是app.py
的更完整版本
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello, World!'
if __name__ == '__main__':
app.run(host='0.0.0.0', port=5000, debug=True)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.