Re:Defence Against the Docker Arts
by bboreham on Thursday April 04, 2019 @03:10AM
(#19569954)
Layers?
[ Parent
| on HN ]
But aren't they just an implementation detail, albeit a useful one? You'd find copy-on-write deltas in modern snapshotting filesystems too.
Re:Defence Against the Docker Arts
by jacques_chester on Thursday April 04, 2019 @05:53AM
(#19570568)
> But aren't they just an implementation detail, albeit a useful one?
Part of what we do in Cloud Native Buildpacks is to use the layer abstraction more aggressively to make image updating more efficient. That requires taking care with the ordering and contents of each layer, so that they can be replaced individually.
Putting it another way: we don't see the image as the unit of work and distribution. We're focused on layers as the central concept.
Parent was comparing against a tarball, not a snapshotting filesystem.
Re:Defence Against the Docker Arts
by whalesalad on Thursday April 04, 2019 @02:06PM
(#19575306)
Layers are each a tarball, extracted one by one on top of one another to get you to the end result.
So docker untars a filesystem which contains a file "foo" and calls this layer "1". Then it encounters a "RUN some_installer_thing" which removes file "foo" and calls this layer "2".
If you just untar the layers on top of each other, foo will still be there. This is a problem, no?