docker-镜像的优化

镜像的优化原则

  • 选择最精简的基础镜像
  • 减少镜像的层数
  • 清理镜像构建的中间产物
  • 注意优化网络请求
  • 尽量去用构建缓存
  • 使用多阶段构建镜像

示例

  • 以搭建nginx镜像为例演示如何加速优化Dockerfile
  • 先准备好linux的安装包,将其放入docke目录下
    在这里插入图片描述
  • 编写Dockerfile
    在这里插入图片描述
  • 创建容器
    在这里插入图片描述
  • 封装镜像
    在这里插入图片描述
    在这里插入图片描述
  • 查看镜像是否封装成功
    在这里插入图片描述
  • 运行测试nginx是否可以正常访问
    在这里插入图片描述
    在这里插入图片描述
  • 编辑配置文件,将其封装成数据卷
    在这里插入图片描述
    在这里插入图片描述
  • 删除之前的nginx,并运行新封装的镜像
    在这里插入图片描述
  • 查看两次的对比,v2会比v1多一层
    在这里插入图片描述
  • 查看nginx数据存放位置
    在这里插入图片描述
    在这里插入图片描述
  • 编辑测试页面test.html
    在这里插入图片描述
  • 测试
    在这里插入图片描述
  • 优化前先清理环境
  • 先将已经在运行nginx的删除
    在这里插入图片描述
  • 删除数据卷
    在这里插入图片描述
  • 镜像优化前,查看镜像的大小为276M
  • 第一次优化:减少镜像层数
    将RUN都放在一行,减少层数
    在这里插入图片描述
  • 重新封装成镜像后查看大小(减少24M)
    在这里插入图片描述
    在这里插入图片描述
  • 第二次优化:清理镜像构建的中间产物
    将不想看到的输出都导入垃圾箱
  • 第三次优化:使用多阶段构建镜像
  • 封装镜像后查看大小
    在这里插入图片描述
  • 重新封装一个镜像查看镜像变成了141M
    在这里插入图片描述
  • 查看此时的镜像是否能运行成功
    在这里插入图片描述
    在这里插入图片描述
  • 最终优化:选择最精简的基础镜像
  • 先将distroless镜像导入docker
    在这里插入图片描述
  • 编辑Dockerfile
    在这里插入图片描述
  • 封装成镜像后查看大小(只有23.3MB)
    在这里插入图片描述
    在这里插入图片描述
  • 测试一下这么小的镜像能否正常使用
    在这里插入图片描述
    在这里插入图片描述
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值