当前位置: 首页 > news >正文

python项目打包为镜像

1.生成requirements.txt

        在项目根目录下,使用pipreqs生成依赖文件,确保镜像构建时安装正确的包

pip install pipreqs pipreqs . --encoding=utf8 --force

2.编写 Dockerfile

# 使用官方 Python 轻量级镜像 FROM python:3.11-slim # 设置容器内工作目录 WORKDIR /app # 复制依赖文件并安装依赖(利用Docker缓存层) COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple #RUN pip install --no-cache-dir -r requirements.txt # 复制应用代码 COPY . . # 暴露端口(FastAPI服务运行的端口,仅作声明,运行时需用-p映射) EXPOSE 8000 # 启动命令(用uvicorn启动服务,host=0.0.0.0允许容器外部访问) CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000"]

3. (可选)添加 .dockerignore 文件

        避免将本地虚拟环境、缓存文件等打入镜像,减小镜像体积

(1)在Dockerfile 所在的同一目录下,创建一个名为.dockerignore的文件

touch .dockerignore
http://www.jsqmd.com/news/274877/

相关文章:

  • 救命神器9个AI论文软件,专科生搞定毕业论文+格式规范!
  • 知光项目对象存储模块
  • 【路径规划】基于RRT、RRT星、RRTX、A_和D_ Lite实现机器人路径规划附matlab代码
  • fastapi里面tortoise-orm的用法
  • 【无人机三维路径规划】基于蚁群算法ACO、蜣螂算法DBO、人工蜂鸟算法AHA复杂山地模型下无人机路径规划附Matlab代码
  • 【AIGC】2025年12月13日 AutoMV: Automatic Multi-Agent System for Music Video Generation 1:介绍
  • 大数据领域数据服务的用户需求挖掘方法
  • 【初阶数据结构】解锁顺序表潜能:一站式实现高效通讯录系统
  • 【AIGC】2025年12月13日 AutoMV: Automatic Multi-Agent System for Music Video Generation 2:论文
  • POSIX信号量
  • SSM289的美食推荐带店铺管理系统
  • S7-1200 控制 5 轴伺服程序案例分享
  • SSM278的考研互助辅导平台vue
  • 生产线效率已近瓶颈,如何通过精益管理实现新的突破?
  • Kiro教程(三)| Kiro 实战与最佳实践
  • 计算机毕业设计springboot医院门诊信息管理系统 基于SpringBoot的智慧门诊综合服务平台 面向中小型医院的SpringBoot门诊业务一体化系统
  • URL末尾到底该不该加斜杠?前端老油条的血泪经验
  • 三菱fx - 5u轴定位与Modbus RTU RS - 485测微计通信案例大揭秘
  • Kiro教程(二)| Kiro 核心功能完全指南
  • 2026/1/20
  • 计算机毕业设计springboot基于Java的房屋租赁系统的设计与实现 基于SpringBoot与Java的在线租房管理平台的设计与实现 JavaWeb架构下智慧住房租赁服务系统研发
  • 2026/1/17~19
  • A.每日一题——3314.构造最小位运算数组I+3315.构造最小位运算数组II
  • 欧姆龙CP1H + CIF11与欧姆龙E5cc温控器通讯程序分享
  • 【DPFSP问题】基于混沌增强领导者黏菌算法CELSMA求解分布式置换流水车间调度DPFSP附Matlab代码
  • 大模型驱动的智能客服Agent系统设计与实现,建议程序员收藏学习
  • 什么是仓库管理系统 WMS?它到底有什么用?
  • FPGA实现万兆网络协议栈UDP/TCP/IP连续16小时无丢包传输
  • 提示系统容器编排管理:提示工程架构师的最优策略
  • 优化提示内容交互设计的9个实用技巧