docker的使用技巧

  1. 合理使用缓存
    • Dockerfile内容如下

      bash 复制代码
      FROM ruhcrybx6abs7ytk.xuanyuan.run/python:3.10.19-slim
      COPY app.py /src/app.py
      RUN pip install flask
      WORKDIR /src
      ENV FLASK_APP=app.py
      EXPOSE 5000
      CMD ["flask", "run", "-h", "0.0.0.0"]
    • 构建日志
      第一次构建

      第二次构建(由于上一次构建,docker中存在缓存,此时使用了缓存)

      第三次构建,修改app.py的内容,发现从COPY app.py /src/app.py开始,后面都没用上缓存
      (当某个指令由于文件内容改变或其他原因,导致无法使用缓存时,后面的其他指令也将无法使用缓存)

      结论:经常修改的文件,在dockerfile中,应该往后放,可以提高镜像构建速度(由于利用缓存),正确示例如下

  2. 使用dockerignore减少build contextd的大小,提高构建速度
相关推荐
贞明电子8 小时前
工业三色报警灯怎么接入项目系统?开关量与RS485控制应用指南
运维·网络·微信公众平台·贞明电子
万联WANFLOW9 小时前
海外网络故障怎么排查?Cloudflare 三季度断网报告解读与 mtr 实战
运维·网络·故障分析
Ruiery11 小时前
Linux 6.6内核内存管理深度解析(十三):slab/slub 分配器
linux·运维·服务器
Decay__12 小时前
04_MySQL DBA 日常运维手册 —— 会话管理、锁与阻塞、事务监控、慢查询与日志巡检
运维·数据库·sql·mysql·架构
江华森13 小时前
数据中心基础设施运维实战:概述与实验环境搭建
运维
迪菲赫尔曼13 小时前
【基础篇 11】把官方源码放到服务器:版本、解压层级和安装位置,一次弄清楚
运维·服务器·开发语言·人工智能·python·yolo·目标检测
by2099915 小时前
Linux GCC/G++ 编译与 Makefile 构建
linux·运维·服务器·经验分享
螺丝钉tina15 小时前
[Playwright][08] Upload 模块自动化:如何设计真实业务测试用例?
运维·自动化·测试用例
迪菲赫尔曼15 小时前
【基础篇 12】把环境与源码接起来:检查 GPU,再安装服务器上的项目
运维·服务器·开发语言·人工智能·python·yolo·目标检测
cq林志炫16 小时前
两个Linux服务器之间同步文件
linux·运维·服务器