FastAPI 学习之路(四十三)利用Docker部署发布


        我们之前的部署都是基于本地的部署,我们这次来看下,如何基于docker去部署我们的项目。

        1.首先去编写一个docker镜像的制作文件Dockerfile

FROM python:3.7

RUN pip install fastapi uvicorn aiofiles fastapi-async-sqlalchemy python-multipart

EXPOSE 80

COPY . .

CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "80"]

        其实简单,就是告知依赖的python3.7,需要安装依赖包。然后复制本地文件。然后执行部署。

        2.写好文件,就是打包我们的镜像。执行命令

 docker build -t myfastapi .

   这里需要耐心等待就可以

   打包完成后,我们可以用docker images查看

 然后我们可以去部署。

        

sudo docker run -d --name myfastapi -p 80:80 myfastapi

        启动后,我们可以看使用docker ps -a查看

  接下来我们就可以访问了

http://127.0.0.1/openapi或者http://0.0.0.0/openapi都可以查看

  两个地址都可以访问成功。

    3.我们也可以把本地镜像导出出来。

docker save -o myfastapi.tar myfastapi

 导出之后,我们以后部署可以在任意的docker去部署我们的服务。

 然后我们在要去部署的机器执行

docker load < myfastapi.tar 

    然后去启动镜像即可。其实docker去部署很简单。

文章首发在公众号,欢迎关注。

原文地址:https://www.cnblogs.com/leiziv5/p/15416846.html