tigerquoll commented on issue #1501: Metron-2246 rpm-docker - minimise use of 
bind mounts due to performance
URL: https://github.com/apache/metron/pull/1501#issuecomment-528137707
 
 
   @mmiklavc Fair question.
   During the maven prepare phase for the packaging project, the jars from all 
of the metron sub-project target directories get copied into the 
rpm-docker/SOURCES directory.  This then becomes the source of the new docker 
image.
   Docker keeps track (i.e. checksums) all of the source data used to build 
each step of a docker image (This is called the docker context).  When you 
rebuild a docker image, docker compares the checksums to the source data, and 
skips the build process if nothing in the docker context of that image has 
changed.
   The rpm-docker build process builds both docker images *every* times it 
runs.  Most times the first image has no changes in its source files, so the 
build is skip.  The second build process (the one that embeds Metron jars) will 
actually skip as well if none of the Metron source jars have changed. (bonus 
optimisation!).
   This "keeping track of docker contexts" is fundamental to how the docker 
process changes, and has been validated and tested by everyone who utilises 
docker files.
   
   

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

Reply via email to