build: 添加 Dockerfile 和 docker-compose.yaml 文件
- 新增 Dockerfile 用于构建 Flask 应用的 Docker 镜像 - 添加 docker-compose.yaml 文件简化本地开发环境配置 - 在 main.py 中优化了 chat_completions 函数的逻辑
This commit is contained in:
parent
ccf4e4cedc
commit
2d3bc1971c
25
Dockerfile
Normal file
25
Dockerfile
Normal file
@ -0,0 +1,25 @@
|
||||
# 使用官方的 Python 基础镜像
|
||||
# 推荐使用特定版本,例如 python:3.9-slim-buster,更小更安全
|
||||
FROM python:3.12-bookworm
|
||||
|
||||
# 设置工作目录,后续所有命令都将在此目录下执行
|
||||
WORKDIR /app
|
||||
|
||||
# 将 requirements.txt 复制到工作目录,并安装 Python 依赖
|
||||
# 这一步单独进行,利用 Docker 缓存机制,如果依赖不变,则不需要重新安装
|
||||
COPY requirements.txt .
|
||||
RUN pip install --no-cache-dir -r requirements.txt
|
||||
|
||||
# 将所有应用代码复制到容器中
|
||||
COPY . .
|
||||
|
||||
# 暴露 Flask 应用监听的端口
|
||||
# 注意:EXPOSE 只是声明端口,不会实际发布端口,需要在运行容器时进行端口映射
|
||||
EXPOSE 5000
|
||||
|
||||
# 定义容器启动时执行的命令
|
||||
# 这里使用 Gunicorn 作为生产级的 WSGI 服务器,而不是 Flask 内置的开发服务器
|
||||
# 你需要先在 requirements.txt 中添加 gunicorn
|
||||
# CMD ["gunicorn", "-w", "4", "-b", "0.0.0.0:5000", "app:app"]
|
||||
# 如果只是测试或简单应用,也可以直接用 Flask 开发服务器
|
||||
CMD ["python", "main.py"]
|
||||
22
docker-compose.yaml
Normal file
22
docker-compose.yaml
Normal file
@ -0,0 +1,22 @@
|
||||
services:
|
||||
web:
|
||||
build: ./ # 指定 Dockerfile 的构建上下文路径
|
||||
ports:
|
||||
- "181:5000" # 端口映射:主机端口:容器端口
|
||||
volumes:
|
||||
- ./:/app # 挂载本地代码到容器,方便开发时修改代码立即生效
|
||||
environment: # 环境变量,例如 Flask 的开发模式
|
||||
FLASK_ENV: development
|
||||
# depends_on: # 如果有其他服务,例如数据库,可以添加依赖
|
||||
# - db
|
||||
# db:
|
||||
# image: postgres:13-alpine
|
||||
# environment:
|
||||
# POSTGRES_DB: mydatabase
|
||||
# POSTGRES_USER: user
|
||||
# POSTGRES_PASSWORD: password
|
||||
# volumes:
|
||||
# - db_data:/var/lib/postgresql/data
|
||||
|
||||
# volumes: # 如果有持久化数据需求,例如数据库数据
|
||||
# db_data:
|
||||
Loading…
x
Reference in New Issue
Block a user