这篇文章主要介绍了docker怎么部署fastapi的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇docker怎么部署fastapi文章都会有所收获,下面我们一起来看看吧。
项目结构:
pycharm结构:
拷贝到xftp时的结构
入口文件:main.py
from fastapi import FastAPI app = FastAPI() @app.get("/index", name="欢迎首页")async def index(): return {"msg": "欢迎来到SayHello!"}
项目依赖:
使用命令可以直接在根目录生成requirements.txt文件
pip freeze > requirements.txt
requirements.txt 内容如下
aiofiles==0.5.0aniso8601==7.0.0async-exit-stack==1.0.1async-generator==1.10certifi==2021.5.30charset-normalizer==2.0.3click==7.1.2colorama==0.4.4dnspython==2.1.0email-validator==1.1.3fastapi==0.67.0graphene==2.1.9graphql-core==2.3.2graphql-relay==2.0.1h21==0.12.0idna==3.2itsdangerous==1.1.0Jinja2==2.11.3MarkupSafe==2.0.1orjson==3.6.0pip==21.2.1promise==2.3pydantic==1.8.2python-dotenv==0.19.0python-multipart==0.0.5PyYAML==5.4.1requests==2.26.0Rx==1.6.1setuptools==57.4.0six==1.16.0starlette==0.14.2typing-extensions==3.10.0.0ujson==4.0.2urllib3==1.26.6uvicorn==0.13.4watchgod==0.7websockets==8.1
Dockerfile:
FROM python:3.9.5COPY . /appRUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtimeRUN echo 'Asia/Shanghai' >/etc/timezoneWORKDIR ./appRUN pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/EXPOSE 8080CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8080"]
xshell进入项目文件列表路径
构建镜像文件(命令结尾的小点“.” 别忘记了)
docker build -t 项目名称 .
构建成功后运行容器即可:
docker run -d --name 新取的容器名称 -p 8000:80 刚刚构建的镜像名称
关于“docker怎么部署fastapi”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“docker怎么部署fastapi”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注编程网行业资讯频道。