forked from rurban/safeclib
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Dockerfile-ubuntu-qemu
39 lines (31 loc) · 1.02 KB
/
Dockerfile-ubuntu-qemu
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
ARG ARCH=aarch64
ARG BASE_IMAGE=arm64v8/ubuntu
FROM multiarch/qemu-user-static:${ARCH} as qemu
# Docker >= 17.05.0-ce allows using build-time args (ARG) in FROM (#31352).
# https://github.com/moby/moby/releases/tag/v17.05.0-ce
FROM ${BASE_IMAGE}
ARG ARCH=aarch64
# Test with non-root user.
ENV TEST_USER tester
ENV WORK_DIR "/work"
# Put the qemu interpreter to run arch container with a binfmt_misc file
# that does not have the persistent option (flags: F).
COPY --from=qemu /usr/bin/qemu-${ARCH}-static /usr/bin
RUN uname -a
RUN apt-get update -qq && \
apt-get install -yq --no-install-suggests --no-install-recommends \
build-essential \
file \
gcc \
make \
git \
sudo \
autotools-dev automake autoconf libtool libtext-diff-perl pkg-config
# Create test user and the environment
RUN useradd "${TEST_USER}"
WORKDIR "${WORK_DIR}"
COPY . .
RUN chown -R "${TEST_USER}:${TEST_USER}" "${WORK_DIR}"
# Enable sudo without password for convenience.
RUN echo "${TEST_USER} ALL = NOPASSWD: ALL" >> /etc/sudoers
USER "${TEST_USER}"