Я запускаю приложение FastAPI в Python, используя uvicorn на машине Windows. Это работает нормально, когда я либо
- запускаю следующий код на моей ма c, либо
- Когда я не указываю порт для uvicorn (удалите параметр
host
из вызова uvicorn.run) - Когда я указываю порт '127.0.0.1', который является хостом, который он использует, когда я вообще не указываю хост.
from fastapi import FastAPI
import uvicorn
app = FastAPI()
@app.get("/")
async def root():
return {"message": "Hello World"}
if __name__ == '__main__':
uvicorn.run(app, port=8080, host='0.0.0.0')
Когда я go на 0.0.0.0:8080 в своем браузере, я получаю сообщение об ошибке "Этот сайт не доступен".
Я проверил свои текущие активные порты, чтобы убедиться, что я я не получаю коллизию с использованием netstat -ao |find /i "listening"
, а 0.0.0.0:8080 не используется.
Моя текущая конфигурация файла выглядит следующим образом:
working_directory
└── app
├── gunicorn_conf.py
└── main.py
Мой gunicorn_conf.py супер просто и просто пытается установить хост и порт:
host = "0.0.0.0"
port = "8080"
Как я могу заставить это работать, когда я задаю порт '0.0.0.0'?