Dockerfile实践小提示
https://mengz.me/posts/dockerfile-practies-tips/ 在进行应用容器化的实践中,我们可以使用多种方式来创建容器镜像,而使用 Dockerfile 是我们最常用的方式。 而且在实现CI/CD Pipeline的过程中,使用Dockerfile来构建应用容器也是必须的。 本文不具体介绍Dockerfile的指令和写法,仅仅是在实践中积累的一些写好一个Dockerfile的小提示,体现在一下几个方面: 减少构建时间 减小镜像大小 镜像可维护性 重复构建一致性 安全性 <!-- more --> 减小构建时间 首先来看看下面这个Dockerfile FROM ubuntu:18.04 COPY . /app RUN apt-get update RUN apt-get -y install ssh vim openjdk-8-jdk CMD [“java”,”-jar”,”/app/target/app.jar”] 要减小构建的时间,那我们可以例如Docker构建的缓存特性,尽量保留不经常改变的层,而在Dockerfile的指令中, COPY 和 RUN 都会产生新的层,而且缓存的有效是与命令的顺序有关系的。 在上面的Dockerfile中, COPY . /app 在 RUN apt-get ... 之前,而COPY是经常改变的部分