docker
文章
12 分阶段构建
多阶段构建Docker多阶段构建的好处使用Docker多阶段构建有以下几个好处: 减小镜像大小:每个构建阶段只包含必要的依赖项和文件,从而减小了生成的镜像大小。这可以减少镜像的存储空间和传输时间。 提高构建速度:每个构建阶段可以并行执行,因此可以提高构建速度。而且,每个构建阶段只构建所需的内容,从而减少了构建时间。 简化Dockerfile:使用多个构建阶段可以将Dockerfile分解为更小的部分,从而使Dockerfile更加易于管理和维护。每个构建阶段都可以专注于特定的任务,而不必关注整个构建过程。 提高安全性:使用多个构建阶段可以限制敏感信息的泄露。例如,在第一个构建阶段中,可以包含敏感信息,例如私有密钥或密码。而在第二个构建阶段中,可以只包含必要的文件和依赖项。 单独执行rm并不会精简镜像体积尽管在 Dockerfile 中使用 RUN rm -rf /tmp/* 删除了大量文件,但你可能会发现最终生成的 Docker 镜像的大小并没有显著变化。这是因为每个 Dockerfile 指令都会创建一个新的镜像层,而删除文件的操作并不会减少已有层的大小...
13 覆盖原始命令
如果你的 Dockerfile 中有如下定义: 12ENTRYPOINT ["python"]CMD ["app.py"] 你可以在启动容器时使用 –entrypoint 选项来覆盖 ENTRYPOINT,并且提供新的命令来覆盖 CMD: 1docker run --entrypoint /bin/sh <image> 或者同时覆盖 ENTRYPOINT 和 CMD: 1docker run --entrypoint /bin/sh <image> -c "ls -la"
总结
学习路线 doker概述 doker安装 doker命令 doker镜像 容器数据卷 dokerfile doker网络原理 IDEA整合doker doker compose 集群 doker swarm 部署 CI/CD jenkins 部署流水线 doker概述12@mindmap@endmindmap
Docker
Docker Docker 一、解决的问题 二、与虚拟机的比较 三、优势 四、使用场景 五、镜像与容器 参考资料 一、解决的问题由于不同的机器有不同的操作系统,以及不同的库和组件,在将一个应用部署到多台机器上需要进行大量的环境配置操作。 Docker 主要解决环境配置问题,它是一种虚拟化技术,对进程进行隔离,被隔离的进程独立于宿主操作系统和其它隔离的进程。使用 Docker 可以不修改应用程序代码,不需要开发人员学习特定环境下的技术,就能够将现有的应用程序部署在其它机器上。 二、与虚拟机的比较虚拟机也是一种虚拟化技术,它与 Docker 最大的区别在于它是通过模拟硬件,并在硬件上安装操作系统来实现。 启动速度启动虚拟机需要先启动虚拟机的操作系统,再启动应用,这个过程非常慢; 而启动 Docker 相当于启动宿主操作系统上的一个进程。 占用资源虚拟机是一个完整的操作系统,需要占用大量的磁盘、内存和 CPU 资源,一台机器只能开启几十个的虚拟机。 而 Docker 只是一个进程,只需要将应用以及相关的组件打包,在运行时占用很少的资源,一台机器可以开启成千...









