Dockerfile配置基于 Python 的 Web 应用镜像

  1. 基础镜像:使用官方的 Python 3.9 轻量级镜像
  2. 环境设置:禁用 Python 字节码生成并确保标准输出 / 错误流不缓冲
  3. 依赖安装 :
    • 先安装系统级依赖(如 gcc 和 Python 开发头文件)
    • 再安装 Python 包依赖(通过 requirements.txt)
  4. 文件拷贝:将项目文件复制到镜像中
  5. 端口暴露:默认暴露 8000 端口(可根据实际应用修改)
  6. 启动命令:示例使用 Django 的开发服务器启动命令(需根据实际应用修改)

使用方法:

  1. 在项目根目录创建 requirements.txt 文件列出所有依赖

  2. 将此 Dockerfile 放在项目根目录

  3. 构建镜像:docker build -t my-python-webapp .

  4. 运行容器: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"]

相关推荐
泡泡oO3 分钟前
“如果你还在用Superpowers,那我不要和你说话”
前端·后端·全栈
维克兜率天7 分钟前
趋势过滤:避免被“假突破“反复打脸
前端
万年咸鱼10 分钟前
解决C语言的内存释放机制
java·c语言·python
破芽26 分钟前
python知识点整理02
开发语言·python
一木 之林26 分钟前
DeepSeek Agent 开发(三)
java·大数据·linux
8年区块链老兵35 分钟前
一篇文章教会你:用区块高度读懂比特币链上的每一笔交易
前端
打工仔折腾 AI1 小时前
Docker镜像分层与卷挂载到底怎么工作:一次文件系统层面的实测分析
运维·人工智能·后端·python·docker·容器·性能优化
老歌老听老掉牙1 小时前
麻花钻锥面后刀面数学模型的完整推导与数值求解
python·钻头·后刀面
denlaku1 小时前
JDK 10 新特性详解
java·开发语言
xixichensh1 小时前
前端转做AI程序员第一步——开发一个AI流式对话Demo
前端