多语言展示
当前在线:1825今日阅读:2今日分享:38

RAK部落:Dockfile 生成Docker镜像文件大小

下面就是我针对docker file同一个文件,按照layer层的个数的多少,分别构建了两个镜像的jenkins-master。两者大小相差300MB。
方法/步骤
1

layer层数太多,没有将命令合并为一条命令FROM jenkins/jenkins:2.194 MAINTAINER tiandong9860806@linuxidc.com USER root

2

ENV MAVEN_HOME /usr/local/maven ENV Java_HOME /usr/local/java ENV M2=/usr/local/maven/repository ENV CLASSPATH .:$JAVA_HOME/lib:$M2_HOME/lib ENV PATH $MAVEN_HOME/bin:$JAVA_HOME/bin:$PATH

3

RUN mkdir -p /usr/local/java RUN mkdir -p /usr/local/maven/repositoryCOPY soft/apache-maven-3.5.4/* /usr/local/ COPY soft/jre1.8.0_212/* /usr/local/java/

4

layer层数很少,将全部命令合并为一条命令FROM jenkins/jenkins:2.194 MAINTAINER tiandong9860806@linuxidc.comUSER root && \ ENV MAVEN_HOME /usr/local/maven && \ ENV JAVA_HOME /usr/local/java && \ ENV M2 /usr/local/maven/repository && \ ENV CLASSPATH .:$JAVA_HOME/lib:$M2_HOME/lib && \ ENV PATH $MAVEN_HOME/bin:$JAVA_HOME/bin:$PATH && \

5

RUN mkdir -p /usr/local/java && \ RUN mkdir -p /usr/local/maven/repository && \COPY soft/apache-maven-3.5.4/* /usr/local/ && \ COPY soft/jre1.8.0_212/* /usr/local/java/

7

我们检查结果发现第二个dockerfile生成的镜像文件大小要比前者体积小300MB。root >> docker images

推荐信息