qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v2 05/21] docker: compact debian base


From: Philippe Mathieu-Daudé
Subject: Re: [Qemu-devel] [PATCH v2 05/21] docker: compact debian base
Date: Tue, 9 May 2017 09:06:42 -0300
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0

On 05/09/2017 05:05 AM, Fam Zheng wrote:
On Tue, 05/09 08:46, Alex Bennée wrote:

Fam Zheng <address@hidden> writes:

On Mon, 05/08 19:17, Philippe Mathieu-Daudé wrote:
- install common/basic tools at once
- use eatmydata and remove apt cache to save space
- add bison and flex and git
- create deb-src entry and setup Emdebian in the same layer

Signed-off-by: Philippe Mathieu-Daudé <address@hidden>
---
 tests/docker/dockerfiles/debian.docker | 26 +++++++++++++-------------
 1 file changed, 13 insertions(+), 13 deletions(-)

diff --git a/tests/docker/dockerfiles/debian.docker 
b/tests/docker/dockerfiles/debian.docker
index d08def6a8d..dcded3ce84 100644
--- a/tests/docker/dockerfiles/debian.docker
+++ b/tests/docker/dockerfiles/debian.docker
@@ -9,17 +9,17 @@
 #
 FROM debian:stable-slim

-# Setup some basic tools we need
-RUN apt update
-RUN apt install -yy aptitude ca-certificates curl
+# Install some basic tools and common build utilities
+RUN apt-get update && \
+    DEBIAN_FRONTEND=noninteractive apt-get install -yy \
+        eatmydata && \
+    DEBIAN_FRONTEND=noninteractive eatmydata apt-get install -y 
--no-install-recommends \
+        aptitude ca-certificates curl \
+        build-essential clang git \
+        bison flex && \
+    apt-get clean

Any particular reason to make multiple "RUN" directives into one?

It reduces the number of layers you generate during the building
process. I'm not sure how much space that saves in the long run though
(disk space is pretty cheap ;-).

I don't think it matters much, but refreshing an image gets slower due to
coarser cache, for example when you add a package in the big "apt-get install"
command.

I don't see a strong reason why this is better. It clutters the file and is
inconsistent.

I'm living in a remote place where Internet is pretty bad so it does save me some time to have reduced layer while using 'docker save | docker load', but no worry :)

I'll revert this patch and just add bison/flex/git packages, and eventually keep DEBIAN_FRONTEND=noninteractive to avoid harmless error messages.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]