moby/runconfig
Tonis Tiigi 504e67b867 Calculate hash based image IDs on pull
Generate a hash chain involving the image configuration, layer digests,
and parent image hashes. Use the digests to compute IDs for each image
in a manifest, instead of using the remotely specified IDs.

To avoid breaking users' caches, check for images already in the graph
under old IDs, and avoid repulling an image if the version on disk under
the legacy ID ends up with the same digest that was computed from the
manifest for that image.

When a calculated ID already exists in the graph but can't be verified,
continue trying SHA256(digest) until a suitable ID is found.

"save" and "load" are not changed to use a similar scheme. "load" will
preserve the IDs present in the tar file.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2015-10-12 10:51:28 -07:00
..
fixtures Add support for DNS options 2015-09-16 14:06:45 -07:00
compare.go Remove PortSpecs from Config 2015-05-29 22:38:09 +02:00
compare_test.go abstract the string slice struct to stringutils package 2015-08-29 01:08:40 +08:00
config.go Calculate hash based image IDs on pull 2015-10-12 10:51:28 -07:00
config_test.go abstract the string slice struct to stringutils package 2015-08-29 01:08:40 +08:00
config_unix.go Move VolumeDriver to HostConfig to make containers portable. 2015-09-04 12:42:44 -04:00
config_windows.go Move netmode validation to server 2015-08-14 12:17:41 -07:00
exec.go Revert "Revert "Add docker exec run a command in privileged mode"" 2015-08-13 16:36:44 +10:00
exec_test.go Add minor vet fixes 2015-07-12 19:16:38 +02:00
hostconfig.go bump libcontainer to 902c012e85cdae6bb68d8c7a0df69a42f818ce96 2015-10-06 17:55:09 +02:00
hostconfig_test.go Network remote APIs using new router, --net=<user-defined-network> changes 2015-10-07 03:54:19 -07:00
hostconfig_unix.go Network remote APIs using new router, --net=<user-defined-network> changes 2015-10-07 03:54:19 -07:00
hostconfig_windows.go Move netmode validation to server 2015-08-14 12:17:41 -07:00
merge.go Revert "Container don't inherit from image labels" 2015-08-11 17:01:57 -07:00
merge_test.go Remove panic in nat package on invalid hostport 2015-07-17 13:02:54 -07:00
parse.go Merge pull request #16645 from mavenugo/ux 2015-10-07 10:44:58 -07:00
parse_test.go fix the error msg of func TestParseRunVolumes 2015-10-10 14:56:50 +08:00
parse_unix.go Network remote APIs using new router, --net=<user-defined-network> changes 2015-10-07 03:54:19 -07:00
parse_windows.go Move netmode validation to server 2015-08-14 12:17:41 -07:00