Dockerfile配置基于 Python 的 Web 应用镜像
- 基础镜像:使用官方的 Python 3.9 轻量级镜像
- 环境设置:禁用 Python 字节码生成并确保标准输出 / 错误流不缓冲
- 依赖安装:
- 先安装系统级依赖(如 gcc 和 Python 开发头文件)
- 再安装 Python 包依赖(通过 requirements.txt)
- 文件拷贝:将项目文件复制到镜像中
- 端口暴露:默认暴露 8000 端口(可根据实际应用修改)
- 启动命令:示例使用 Django 的开发服务器启动命令(需根据实际应用修改)
使用方法:
- 在项目根目录创建
requirements.txt
文件列出所有依赖 - 将此 Dockerfile 放在项目根目录
- 构建镜像:
docker build -t my-python-webapp .
- 运行容器:
docker run -p 8000:8000 my-python-webapp
# 使用官方 Python 基础镜像
FROM python:3.9-slim# 设置工作目录
WORKDIR /app# 设置环境变量
ENV PYTHONDONTWRITEBYTECODE 1
ENV PYTHONUNBUFFERED 1# 安装系统依赖
RUN apt-get update && apt-get install -y --no-install-recommends gcc python3-dev# 安装 Python 依赖
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt# 拷贝项目文件
COPY . .# 暴露应用端口(根据实际应用修改)
EXPOSE 8000# 启动应用(根据实际应用修改启动命令)
CMD ["python", "manage.py", "runserver", "0.0.0.0:8000"]