python docker 镜像过大_如何缩小Docker 镜像的文件大小

在这里以Python 举例

直接上对比

原始

******* latest 01360a9dec8f About an hour ago 1.05GB

改进后

****** latest 9e3b99fe9812 13 seconds ago 172MB

第一步 选用 正确的镜像

下面是部分官方镜像截图(截取自dockerhub)

可以看到 不同的tag 有的相差一二百MB 有些基于windows的镜像甚至高达5.4GB之巨! 所以 选用正确的镜像很重要. 这里建议使用基于alpine的Python Runtime镜像. 但是alpine 过于精简,少了很多基础软件 例如 gcc , 当安装某些需要编译的Python 包的时候就需要它.

image.png

第二步 如何正确的在构建镜像时 pip install

这里用到一些 Dockerfile 中的 Stage 概念. 和pip install 把包都安装到了哪里.

FROM docker pull python:3.8.3-alpine3.11 as Base

RUN apk --no-cache add curl

RUN curl -O https://download.microsoft.com/download/e/4/e/e4e67866-dffd-428c-aac7-8d28ddafb39b/msodbcsql17_17.5.2.2-1_amd64.apk && \

apk add --allow-untrusted msodbcsql17_17.5.2.2-1_amd64.apk

FROM Base as Build

WORKDIR /src

RUN apk --no-cache add build-bas

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值