(打通開發到生產的環境部署問題,最便捷的方式就是用docker容器)
FROM python:3.10
ADD ./py /code
WORKDIR /code
RUN pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple some-package
CMD ["uvicorn", "server:app", "--host", "0.0.0.0", "--reload"]
click==8.1.3
fastapi==0.68.2
h11==0.13.0
pydantic==1.9.1
starlette==0.14.2
typing_extensions==4.3.0
uvicorn==0.18.2
from fastapi import FastAPI
app = FastAPI()
@app.get("/api")
def index():
return "hello world"
docker build -t py_server:1 .
docker run -p 18000:8000 -v /root/workspace/py:/code -d --name py_server py_server:1
# 使用volume 這樣可以在宿主機上修改代碼,因為uvicon使用reload參數,所以直接就生效了