
Docker 快速部署 FastAPI 项目
以下是使用 Docker 快速部署 FastAPI 项目的步骤:
1. 准备 FastAPI 项目
首先,创建一个简单的 FastAPI 应用。例如,在项目目录下创建一个
main.py
文件,内容如下:from fastapi import FastAPI app = FastAPI() @app.get("/") async def root(): return {"message": "Hello World"}
然后,创建一个 requirements.txt
文件,列出所有依赖项,例如:
fastapi uvicorn
2. 编写 Dockerfile
在项目根目录下创建一个
Dockerfile
,内容如下:FROM python:3.9-slim WORKDIR /app COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt COPY . . CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000"]
这个 Dockerfile 使用了 Python 3.9 的 slim 镜像作为基础镜像,设置工作目录,安装依赖,并运行 FastAPI 应用。 3. 构建 Docker 镜像 在项目根目录下运行以下命令来构建 Docker 镜像:
docker build -t fastapi-app .
-t fastapi-app
是为镜像指定一个名称,.
表示使用当前目录下的 Dockerfile
。4. 运行 Docker 容器
构建完成后,运行容器:
docker run -d -p 8000:8000 --name fastapi-container fastapi-app
-
-d
表示以守护进程模式运行容器。 -
-p 8000:8000
表示将容器的 8000 端口映射到主机的 8000 端口。 -
--name fastapi-container
是为容器指定一个名称。
5. 使用 Docker Compose(可选)
如果需要更方便地管理容器,可以使用 Docker Compose。创建一个
docker-compose.yml
文件,内容如下:version: '3.8' services: web: build: . ports: - "8000:8000"
6. 测试部署 访问 http://localhost:8000,如果一切正常,你会看到返回的 JSON 数据。还可以访问 http://localhost:8000/docs 查看自动生成的交互式 API 文档。 通过以上步骤,你可以快速将 FastAPI 项目部署到 Docker 容器中。
============ 欢迎各位老板打赏~ ===========


与本文相关的文章
- · docker安装 Confluence9
- · 单台服务器应用不中断服务热部署滚动更新方案
- · docker安装code-server
- · Docker 镜像加速列表(20250216已更新)
- · 解决docker push 到私有registry时,报unknown blob错
- · Amazon Linux 2023 安装Docker和Docker Compose
- · 修改Docker的默认网段
- · docker定时任务Mysql脚本
- · 解决Linux实例磁盘空间满问题
- · failed to fetch metadata: fork/exec /home/appuser/.docker/cli-plugins/docker-buildx: exec format error
- · Docker登录login报错Error saving credentials
- · docker安装mysql8注意事项