Docker上部署FastApi的示例代码

1 文件上传与新建目录

新建以下目录,其中.py文件是自己上传的

文件目录

新建以下文件 

2 修改requirements.txt文件

这里面写的是运行程序所需要的py包,比如你用到了httpx包就在里面加上这个,用到什么加什么就可以了。以下我的实例

httpx
fastapi[all]

3 修改Dockerfile.txt文件

这里面主要是写入的运行时的配置信息

# 引入python版本
FROM python:3.8
 
# 设置时间
RUN ln -sf /usr/share/zoneinfo/Asia/Beijing/etc/localtime
 
# 输出时间
RUN echo 'Asia/Beijing' >/etc/timezone
 
# 设置工作目录
WORKDIR /code
 
# 复制该文件到工作目录中,./requirements.txt表示当前目录下的requirements.txt文件。这里 # 的/code/requirements.txt是docker内部自动生成的工作目录,不用自己创建的,请注意。
COPY ./requirements.txt /code/requirements.txt
 
# 禁用缓存并批量安装包(后面的链接是利用豆瓣源安装,速度会加快)
RUN pip install --no-cache-dir --upgrade -r /code/requirements.txt -i https://pypi.douban.com/simple/
 
# 复制代码到工作目录
COPY ./app /code/app
 
# 放开端口
EXPOSE 8001
 
# 命令行运行,启动uvicorn服务,指定ip和端口(--reload:让服务器在更新代码后重新启动。仅在开发时使用该选项。)
CMD ["uvicorn", "app.main:app", "--reload", "--host", "0.0.0.0", "--port", "8001"]

你只需要更改这些位置即可。 

1 ExPOSE 你的端口号

2 其中main为py的入口文件

4 打包成镜像

docker build -t 镜像名 .

实例:

docker build -t my_fast_sql .

5 运行启动

docker run -d --name 镜像名 -p 你的服务器端口:你的docker端口 容器名

实例

docker run -d --name my_fast_sql -p 8001:8001 my_s_f

6 查看运行状态与日志

docker ps
docker logs 你的容器id

作者:桂亭亭原文地址:https://blog.csdn.net/qq_53679247/article/details/129489421

%s 个评论

要回复文章请先登录注册