From 7845f6dddea66fce6e908036d737d68435e85782 Mon Sep 17 00:00:00 2001 From: Avery Pennarun Date: Tue, 5 Mar 2019 21:49:36 -0500 Subject: [PATCH] docs/cookbook/container: update docker image builder. Apparently some newer docker versions crash if there is no "repository" file in the resulting image. Its syntax seems simple enough, described in https://github.com/moby/moby/blob/master/image/spec/v1.md Reported-by: Matthew Singletary --- docs/cookbook/container/default.image.do | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/docs/cookbook/container/default.image.do b/docs/cookbook/container/default.image.do index 75d6aea..7ef142c 100644 --- a/docs/cookbook/container/default.image.do +++ b/docs/cookbook/container/default.image.do @@ -29,6 +29,17 @@ for layer in $layers; do ln "$layer.layer" "$dir/$cid/layer.tar" parent=$layer done <$1.layers +last_cid=$cid -tar -C "$dir" -cf - $ids >$3 +# The seemingly-redundant "repositories" file seems to be needed by newer +# docker versions. +cat >"$dir/repositories" <<-EOF + { + "$2":{ + "latest":"$last_cid" + } + } +EOF + +tar -C "$dir" -cf - $ids repositories >$3 rm -rf "$dir"