python:: fastapi 실행에러 uvicorn main:app --reload

#2024-05-09 update

 

 

 

 

ERROR MESSAGE

uvicorn main:app --reload
'uvicorn' 용어가 cmdlet, 함수, ....

 

 

기본코드를 입력하고 필요한 패키지가 설치되었음에도 

pip install fastapi
pip install uvicorn

 

 

우분투나 gitpod.io 등의 환경에서는 잘 동작을 하나 정착 내 -Windows- 환경에서는 실행불가.

사용자 환경 등에 Path를 이리저리 넣더라도 동작을 하지 않는다. 

 

 

 

 

 

 

# main.py
from fastapi import FastAPI

app = FastAPI()

@app.get("/")
async def root():
    return {"message" : "Hello Hello"}
    
    
    
# RUN in terminal 
# uvicorn main:app --reload

 

 

 

조치방법1)

다음 문구로 실행가능 (pyenv -가상-환경도 가능)

uvicorn 또한 python 모듈이라는 걸 생각하면 왜 이걸 생각해내지 못했을까, 한참 삽질했네

 

python -m uvicorn main:app --reload

 

 

 

 

 


 

조치방법2)

python -m uvicorn으로 실행시킬 수 없는 환경이라면, main.py에 __main__을 추가하여 실행해 보는 것도 방법일 듯

    

# main.py
import uvicorn
from fastapi import FastAPI

app = FastAPI()
# app.mount("/myapp/", app)  # your app routes will now be /app/{your-route-here}

@app.get("/")
async def root():
    return {"message" : "Hello Hello"}

if __name__ == "__main__":
    uvicorn.run("main:app", host="0.0.0.0", reload=True)

 

 

 

 

 

 

_

반응형