kumquat-buildroot/support/docker/Dockerfile
Yann E. MORIN ff0ebec8a9 support/dockerfile: add directives to run as non-root
Currently, our jobs on the gitlab-ci infra are running as root, which is
problematic for two reasons:

  - this is not the usual way Buildroot is built;
  - it may miss issues where running as non-root is problematic.

So, complement our Dockerfile with directives to add a new user and run
everything as that user, as demonstrated by this build job:
    https://gitlab.com/ymorin/buildroot-ci/-/jobs/46929562

Additional, enforce an UTF-8 locale while running.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Arnout Vandecappelle <arnout@mind.be>
Cc: Peter Korsgaard <peter@korsgaard.com>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2018-01-12 22:53:29 +01:00

38 lines
1.2 KiB
Docker

# This Dockerfile generates the docker image that gets used by Gitlab CI
# To build it:
# sudo docker build -t buildroot/base support/docker
# sudo docker push buildroot/base
FROM debian:stable
LABEL maintainer="Buildroot mailing list <buildroot@buildroot.org>" \
vendor="Buildroot" \
description="Container with everything needed to run Buildroot"
# Setup environment
ENV DEBIAN_FRONTEND noninteractive
RUN dpkg --add-architecture i386
# The container has no package lists, so need to update first
RUN apt-get update -y -qq
RUN apt-get install -y -qq --no-install-recommends \
build-essential cmake libc6:i386 gcc-multilib \
bc ca-certificates file locales rsync \
cvs bzr git mercurial subversion wget \
cpio unzip \
libncurses5-dev \
python-nose2 python-pexpect qemu-system-arm qemu-system-x86
RUN apt-get -q -y autoremove
RUN apt-get -q -y clean
# 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 /usr/sbin/locale-gen
RUN useradd -ms /bin/bash br-user
RUN chown -R br-user:br-user /home/br-user
USER br-user
WORKDIR /home/br-user
ENV HOME /home/br-user
ENV LC_ALL en_US.UTF-8