1纵寝、現(xiàn)在在相同的project目錄創(chuàng)建一個(gè)名為Dockerfile
的文件:
FROM python:3.9
WORKDIR /code
COPY ./requirements.txt /code/requirements.txt
RUN pip install --no-cache-dir --upgrade -r /code/requirements.txt
COPY ./app /code/app
CMD ["uvicorn", "app.main:app", "--host", "0.0.0.0", "--port", "80"]
2怯伊、創(chuàng)建 FastAPI 代碼?
- 創(chuàng)建
app
目錄并進(jìn)入届榄。
- 創(chuàng)建一個(gè)空文件
__init__.py
拄显。
- 創(chuàng)建一個(gè)
main.py
文件:
from typing import Union
from fastapi import FastAPI
app = FastAPI()
@app.get("/")
def read_root():
return {"Hello": "World"}
@app.get("/items/{item_id}")
def read_item(item_id: int, q: Union[str, None] = None):
return {"item_id": item_id, "q": q}
3崔挖、創(chuàng)造鏡像和容器
docker build -t myimage . #這里有個(gè)點(diǎn)
docker run -d --name mycontainer -p 80:80 myimage