A toolkit for building secure, portable and lean operating systems for containers
Go to file
Ian Campbell 9f44acf8e3 Generate intermediate image into a temp file
All of the `output*` functions took a `[]byte` and immediately wrapped it in a
`bytes.Buffer` to produce an `io.Reader`. Make them take an `io.Reader` instead
and satisfy this further up the call chain by directing `moby.Build` to output
to a temp file instead of another `bytes.Buffer`.

In my test case (building kube master image) this reduces Maximum RSS (as
measured by time(1)) from 6.7G to 2.8G and overall allocations from 9.7G to
5.3G. When building a tar (output to /dev/null) the Maximum RSS fell slightly
from 2.2G to 2.1G. Overall allocations remained stable at around 5.3G.

Signed-off-by: Ian Campbell <ijc@docker.com>
2017-12-06 16:07:46 +00:00
.circleci Publish a checksum of the binaries. 2017-11-16 17:15:06 +00:00
cmd/moby Generate intermediate image into a temp file 2017-12-06 16:07:46 +00:00
docs Merge pull request #181 from justincormack/runtime-cgroups 2017-11-17 14:12:08 +00:00
examples Fix docker format build example 2017-11-18 22:22:33 +01:00
src Generate intermediate image into a temp file 2017-12-06 16:07:46 +00:00
test Add Cgroup resource limits into Yaml spec 2017-08-09 16:39:10 +01:00
vendor Update dependencies to use sirupsen not Sirupsen 2017-11-01 15:14:58 +00:00
.gitignore Improve makefile and circleci config 2017-10-17 17:30:44 -04:00
CONTRIBUTING.md Move Contributing to top level 2017-07-14 11:50:51 +01:00
gometalinter.json Fix lint errors 2017-10-17 17:30:47 -04:00
LICENSE Add license files 2017-04-24 23:08:30 +01:00
Makefile Merge pull request #185 from justincormack/fix-make 2017-11-17 15:21:08 +00:00
NOTICE Add license files 2017-04-24 23:08:30 +01:00
poule.yml add initial poule config 2017-11-14 12:16:54 -05:00
vendor.conf Update dependencies to use sirupsen not Sirupsen 2017-11-01 15:14:58 +00:00