fastapi搭建的python项目怎么使用docker-compose发布

使用 Docker Compose 发布一个基于 FastAPI 的 Python 项目,你可以按照以下步骤进行配置:

1. 创建 Dockerfile

首先,在你的项目根目录下创建一个 Dockerfile,这个文件用来定义如何构建你的 FastAPI 项目。以下是一个示例 Dockerfile

# 使用官方 Python 镜像作为基础镜像
FROM python:3.10

# 设置工作目录
WORKDIR /app

# 复制当前目录下的所有文件到工作目录
COPY . .

# 安装依赖
RUN pip install --no-cache-dir --upgrade pip
RUN pip install --no-cache-dir -r requirements.txt

# 暴露端口
EXPOSE 8000

# 运行命令
CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000"]

请确保 requirements.txt 文件列出了你的项目所需的所有 Python 依赖库。

2. 创建 docker-compose.yml

在项目的根目录下创建 docker-compose.yml 文件,用于定义 Docker Compose 配置。示例如下:

version: '3.8'

services:
  fastapi:
    build: .
    container_name: fastapi_container
    ports:
      - "8000:8000"
    volumes:
      - .:/app
    environment:
      - ENV=production
    depends_on:
      - db

  db:
    image: postgres:13
    container_name: postgres_container
    environment:
      POSTGRES_USER: your_db_user
      POSTGRES_PASSWORD: your_db_password
      POSTGRES_DB: your_db_name
    ports:
      - "5432:5432"
    volumes:
      - postgres_data:/var/lib/postgresql/data

volumes:
  postgres_data:

3. 运行 Docker Compose

在项目根目录下运行以下命令来启动 Docker Compose:

docker-compose up --build

4. 测试 FastAPI 服务

在浏览器中访问 http://localhost:8000/docs,你应该能够看到 FastAPI 的自动生成 API 文档。

5. 常用 Docker Compose 命令

  • 启动服务docker-compose up 或者 docker-compose up -d(后台运行)。
  • 停止服务docker-compose down
  • 重建服务docker-compose up --build
  • 查看日志docker-compose logs 或者 docker-compose logs -f(实时日志)。

这样,你就可以通过 Docker Compose 将你的 FastAPI 项目进行容器化部署了。

猜你喜欢

转载自blog.csdn.net/sunyuhua_keyboard/article/details/143243638