You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Your build tooling appears to be adding an empty 32 byte layer each time it encounters a USER directive in the build.
At work the image analysis pipeline I created highlighted this as an anomaly, it may concern you or it may not - just presenting this information.
This example looks at latest-with-browser (two USER directive in the build stage) which derives from the latest image (release in Dockerfile). This shows two empty layers whilst the latest image (release) uses one USER directive in its production and shows one empty layer.
I base the assumption on the USER directive due to the proximity of the layers as I do not know the tool used in your pipeline. If the layer artifact was due to image being derived from one would suspect that the two identical layers would be separated by an intermediary containing content. In this case they they are not and the only distinguishing factor seems to be the 2 USER directives which should not create layers according to Docker documentation but I imagine some build systems might incorrectly do this so I suspect the build system does isolate empty layers on next layer production and eliminate them but not on the final layer. Without knowing the build tool I cannot advise further.
We can see the image manifest carries two 32 byte files which is actually smaller than an empty tar gz file and appear to be an empty gzip file with a 0 timestamp
k6 version
latest-with-browser
OS
Linux
Docker version and image (if applicable)
No response
Steps to reproduce the problem
Issue is a build system report
Expected behaviour
No duplicate layers and possibly no empty layers
Actual behaviour
Empty layer present on 'latest' and duplicate empty layers on 'latest-with-browser'
The text was updated successfully, but these errors were encountered:
Hey @iamasmith, apologies for the delay, this went under my radar for far too long 🙇🏻
Thanks for bringing this to our attention and for your analysis. Something unexpected seems to be happening indeed on that front, and it's probably something we should evaluate.
My main question mark would be as to whether or not that's an issue per see, considering it's a very tiny overhead.
Reported on the 19th April there appears to be an additional issue noted with Image Streaming that again appears to be triggered under certain circumstances by duplicate layers.
Brief summary
This is more of an FYI
Your build tooling appears to be adding an empty 32 byte layer each time it encounters a USER directive in the build.
At work the image analysis pipeline I created highlighted this as an anomaly, it may concern you or it may not - just presenting this information.
This example looks at latest-with-browser (two USER directive in the build stage) which derives from the latest image (release in Dockerfile). This shows two empty layers whilst the latest image (release) uses one USER directive in its production and shows one empty layer.
I base the assumption on the USER directive due to the proximity of the layers as I do not know the tool used in your pipeline. If the layer artifact was due to image being derived from one would suspect that the two identical layers would be separated by an intermediary containing content. In this case they they are not and the only distinguishing factor seems to be the 2 USER directives which should not create layers according to Docker documentation but I imagine some build systems might incorrectly do this so I suspect the build system does isolate empty layers on next layer production and eliminate them but not on the final layer. Without knowing the build tool I cannot advise further.
We can see the image manifest carries two 32 byte files which is actually smaller than an empty tar gz file and appear to be an empty gzip file with a 0 timestamp
k6 version
latest-with-browser
OS
Linux
Docker version and image (if applicable)
No response
Steps to reproduce the problem
Issue is a build system report
Expected behaviour
No duplicate layers and possibly no empty layers
Actual behaviour
Empty layer present on 'latest' and duplicate empty layers on 'latest-with-browser'
The text was updated successfully, but these errors were encountered: