您好,登錄后才能下訂單哦!
這篇文章主要介紹了docker怎么部署fastapi的相關(guān)知識,內(nèi)容詳細(xì)易懂,操作簡單快捷,具有一定借鑒價(jià)值,相信大家閱讀完這篇docker怎么部署fastapi文章都會有所收獲,下面我們一起來看看吧。
項(xiàng)目結(jié)構(gòu):
pycharm結(jié)構(gòu):
拷貝到xftp時(shí)的結(jié)構(gòu)
入口文件:main.py
from fastapi import FastAPI app = FastAPI() @app.get("/index", name="歡迎首頁") async def index(): return {"msg": "歡迎來到SayHello!"}
項(xiàng)目依賴:
使用命令可以直接在根目錄生成requirements.txt文件
pip freeze > requirements.txt
requirements.txt 內(nèi)容如下
aiofiles==0.5.0 aniso8601==7.0.0 async-exit-stack==1.0.1 async-generator==1.10 certifi==2021.5.30 charset-normalizer==2.0.3 click==7.1.2 colorama==0.4.4 dnspython==2.1.0 email-validator==1.1.3 fastapi==0.67.0 graphene==2.1.9 graphql-core==2.3.2 graphql-relay==2.0.1 h21==0.12.0 idna==3.2 itsdangerous==1.1.0 Jinja2==2.11.3 MarkupSafe==2.0.1 orjson==3.6.0 pip==21.2.1 promise==2.3 pydantic==1.8.2 python-dotenv==0.19.0 python-multipart==0.0.5 PyYAML==5.4.1 requests==2.26.0 Rx==1.6.1 setuptools==57.4.0 six==1.16.0 starlette==0.14.2 typing-extensions==3.10.0.0 ujson==4.0.2 urllib3==1.26.6 uvicorn==0.13.4 watchgod==0.7 websockets==8.1
Dockerfile:
FROM python:3.9.5 COPY . /app RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime RUN echo 'Asia/Shanghai' >/etc/timezone WORKDIR ./app RUN pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/ EXPOSE 8080 CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8080"]
xshell進(jìn)入項(xiàng)目文件列表路徑
構(gòu)建鏡像文件(命令結(jié)尾的小點(diǎn)“.” 別忘記了)
docker build -t 項(xiàng)目名稱 .
構(gòu)建成功后運(yùn)行容器即可:
docker run -d --name 新取的容器名稱 -p 8000:80 剛剛構(gòu)建的鏡像名稱
關(guān)于“docker怎么部署fastapi”這篇文章的內(nèi)容就介紹到這里,感謝各位的閱讀!相信大家對“docker怎么部署fastapi”知識都有一定的了解,大家如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。