support/docker: limit the number of layers
The official documentation [0] suggests limiting the number of layers generated from a dockerfile. A layer is created for each RUN (and COPY and ADD) command. But we are only ever interested in the final image, so the intermediate layers are useless to us. Limit the number of RUN commands to limit the number of generated layers. [0] https://docs.docker.com/develop/develop-images/dockerfile_best-practices/#minimize-the-number-of-layers Reported-by: Peter Korsgaard <peter@korsgaard.com> Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Peter Korsgaard <peter@korsgaard.com> Cc: Arnout Vandecappelle <arnout@mind.be> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This commit is contained in:
parent
9c267b4967
commit
7517aef4dc
@ -11,25 +11,25 @@ description="Container with everything needed to run Buildroot"
|
|||||||
# Setup environment
|
# Setup environment
|
||||||
ENV DEBIAN_FRONTEND noninteractive
|
ENV DEBIAN_FRONTEND noninteractive
|
||||||
|
|
||||||
RUN dpkg --add-architecture i386
|
|
||||||
# The container has no package lists, so need to update first
|
# The container has no package lists, so need to update first
|
||||||
RUN apt-get update -y -qq
|
RUN dpkg --add-architecture i386 && \
|
||||||
RUN apt-get install -y -qq --no-install-recommends \
|
apt-get update -y -qq && \
|
||||||
build-essential cmake libc6:i386 gcc-multilib \
|
apt-get install -y -qq --no-install-recommends \
|
||||||
bc ca-certificates file locales rsync \
|
build-essential cmake libc6:i386 gcc-multilib \
|
||||||
cvs bzr git mercurial subversion wget \
|
bc ca-certificates file locales rsync \
|
||||||
cpio unzip \
|
cvs bzr git mercurial subversion wget \
|
||||||
libncurses5-dev \
|
cpio unzip \
|
||||||
python-nose2 python-pexpect qemu-system-arm qemu-system-x86
|
libncurses5-dev \
|
||||||
RUN apt-get -q -y autoremove
|
python-nose2 python-pexpect qemu-system-arm qemu-system-x86 && \
|
||||||
RUN apt-get -q -y clean
|
apt-get -q -y autoremove && \
|
||||||
|
apt-get -q -y clean
|
||||||
|
|
||||||
# To be able to generate a toolchain with locales, enable one UTF-8 locale
|
# To be able to generate a toolchain with locales, enable one UTF-8 locale
|
||||||
RUN sed -i 's/# \(en_US.UTF-8\)/\1/' /etc/locale.gen
|
RUN sed -i 's/# \(en_US.UTF-8\)/\1/' /etc/locale.gen && \
|
||||||
RUN /usr/sbin/locale-gen
|
/usr/sbin/locale-gen
|
||||||
|
|
||||||
RUN useradd -ms /bin/bash br-user
|
RUN useradd -ms /bin/bash br-user && \
|
||||||
RUN chown -R br-user:br-user /home/br-user
|
chown -R br-user:br-user /home/br-user
|
||||||
|
|
||||||
USER br-user
|
USER br-user
|
||||||
WORKDIR /home/br-user
|
WORKDIR /home/br-user
|
||||||
|
Loading…
Reference in New Issue
Block a user