docker镜像构建 8个最好的实践(1)

简介: docker镜像构建 8个最好的实践(1)

文章目录

1. 如何选择base image

2. 如何使用latest tag

3. 基于不同的操作镜像特性

4. 如何优化的镜像层的缓存

5 .dockerignore丢弃一些垃圾文件

6. 多阶段构建(Multi-Stage Builds)

7. 使用最小权限的用户

8. 构建镜像时要扫描安全漏洞

视频欣赏:https://mp.weixin.qq.com/s/WeyXesSkt_-K3RH2kfoacw

原创:https://www.youtube.com/watch?v=8vXoMqWgbQQ&t=855s

相关阅读:


docker圣经

云原生圣经

Top 20 Dockerfile best practices

1. 如何选择base image

假如我构建一个node.js

1035234-20181020215539574-213176954.png

2. 如何使用latest tag

1035234-20181020215539574-213176954.png

3. 基于不同的操作镜像特性

1035234-20181020215539574-213176954.png

1035234-20181020215539574-213176954.png

1035234-20181020215539574-213176954.png

1035234-20181020215539574-213176954.png

1035234-20181020215539574-213176954.png

4. 如何优化的镜像层的缓存

1035234-20181020215539574-213176954.png

镜像层的缓存在哪查看

dockerhub

1035234-20181020215539574-213176954.png

构建的时候

1035234-20181020215539574-213176954.png

docker history 命令

1035234-20181020215539574-213176954.png

1035234-20181020215539574-213176954.png

1035234-20181020215539574-213176954.png

如何利用好缓存关键在于我们要重用在没有修改的地方不需要重新构建。

1035234-20181020215539574-213176954.png

1035234-20181020215539574-213176954.png

docker build构建的时候可以看到缓存的command层

1035234-20181020215539574-213176954.png




相关文章
|
5月前
|
Kubernetes Docker Python
Docker 与 Kubernetes 容器化部署核心技术及企业级应用实践全方案解析
本文详解Docker与Kubernetes容器化技术,涵盖概念原理、环境搭建、镜像构建、应用部署及监控扩展,助你掌握企业级容器化方案,提升应用开发与运维效率。
945 108
|
4月前
|
弹性计算 关系型数据库 微服务
基于 Docker 与 Kubernetes(K3s)的微服务:阿里云生产环境扩容实践
在微服务架构中,如何实现“稳定扩容”与“成本可控”是企业面临的核心挑战。本文结合 Python FastAPI 微服务实战,详解如何基于阿里云基础设施,利用 Docker 封装服务、K3s 实现容器编排,构建生产级微服务架构。内容涵盖容器构建、集群部署、自动扩缩容、可观测性等关键环节,适配阿里云资源特性与服务生态,助力企业打造低成本、高可靠、易扩展的微服务解决方案。
1926 10
|
4月前
|
人工智能 前端开发 Docker
从本地到云端:用 Docker Compose 与 Offload 构建可扩展 AI 智能体
在 AI 智能体开发中,开发者常面临本地调试与云端部署的矛盾。本文介绍如何通过 Docker Compose 与 Docker Offload 解决这一难题,实现从本地快速迭代到云端高效扩容的全流程。内容涵盖多服务协同、容器化配置、GPU 支持及实战案例,助你构建高效、一致的 AI 智能体开发环境。
477 2
从本地到云端:用 Docker Compose 与 Offload 构建可扩展 AI 智能体
|
4月前
|
JavaScript Docker 容器
使用Docker多阶段构建优化镜像大小
使用Docker多阶段构建优化镜像大小
420 100
|
4月前
|
缓存 安全 Linux
优化Docker镜像大小的多阶段构建实践
优化Docker镜像大小的多阶段构建实践
355 99
|
4月前
|
缓存 Docker 容器
优化Docker镜像大小的五个实用技巧
优化Docker镜像大小的五个实用技巧
420 98
|
4月前
|
缓存 前端开发 Docker
Docker Layer Caching:加速你的容器构建
Docker Layer Caching:加速你的容器构建
|
4月前
|
安全 Go Docker
使用Docker多阶段构建优化镜像大小
使用Docker多阶段构建优化镜像大小
|
3月前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
582 5
|
4月前
|
Java Docker 容器
使用Docker多阶段构建优化镜像大小
使用Docker多阶段构建优化镜像大小
230 8