3
3
#
4
4
FROM ubuntu:16.04
5
5
6
- MAINTAINER Kyle Manna <
[email protected] >
6
+ LABEL maintainer
"Kyle Manna <[email protected] >"
7
+
8
+ ENV GOSU_VERSION=1.10
9
+ ENV DEBIAN_FRONTEND noninteractive
7
10
8
11
# /bin/sh points to Dash by default, reconfigure to use bash until Android
9
12
# build becomes POSIX compliant
@@ -12,13 +15,24 @@ RUN echo "dash dash/sh boolean false" | debconf-set-selections && \
12
15
13
16
# Keep the dependency list as short as reasonable
14
17
RUN apt-get update && \
15
- apt-get install -y bc bison bsdmainutils build-essential curl \
18
+ apt-get install -y ca-certificates bc bison bsdmainutils build-essential curl \
16
19
flex g++-multilib gcc-multilib git gnupg gperf lib32ncurses5-dev \
17
20
lib32z1-dev libesd0-dev libncurses5-dev \
18
21
libsdl1.2-dev libwxgtk3.0-dev libxml2-utils lzop sudo \
19
22
openjdk-8-jdk \
20
23
pngcrush schedtool xsltproc zip zlib1g-dev graphviz && \
21
- apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
24
+ dpkgArch="$(dpkg --print-architecture | awk -F- '{ print $NF }')" ; \
25
+ curl -Ls "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$dpkgArch" -o /usr/local/bin/gosu; \
26
+ curl -Ls "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$dpkgArch.asc" -o /usr/local/bin/gosu.asc \
27
+ # verify the signature
28
+ export GNUPGHOME="$(mktemp -d)" ; \
29
+ gpg --keyserver ha.pool.sks-keyservers.net --recv-keys B42F6819007F00F88E364FD4036A9C25BF357DD4; \
30
+ gpg --batch --verify /usr/local/bin/gosu.asc /usr/local/bin/gosu; \
31
+ rm -r "$GNUPGHOME" /usr/local/bin/gosu.asc; \
32
+ chmod +x /usr/local/bin/gosu; \
33
+ # verify it works
34
+ gosu nobody true; \
35
+ apt-get purge -y --auto-remove ca-certificates ; apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
22
36
23
37
ADD https://commondatastorage.googleapis.com/git-repo-downloads/repo /usr/local/bin/
24
38
RUN chmod 755 /usr/local/bin/*
@@ -28,8 +42,8 @@ RUN chmod 755 /usr/local/bin/*
28
42
WORKDIR /tmp
29
43
30
44
# All builds will be done by user aosp
31
- COPY gitconfig /root /.gitconfig
32
- COPY ssh_config /root/.ssh /config
45
+ COPY gitconfig /home/aosp /.gitconfig
46
+ COPY ssh_config /home/aosp /config
33
47
34
48
# The persistent data will be in these two directories, everything else is
35
49
# considered to be ephemeral
@@ -38,5 +52,5 @@ VOLUME ["/tmp/ccache", "/aosp"]
38
52
# Work in the build directory, repo is expected to be init'd here
39
53
WORKDIR /aosp
40
54
41
- COPY utils/docker_entrypoint.sh /root/ docker_entrypoint.sh
42
- ENTRYPOINT ["/root/ docker_entrypoint.sh" ]
55
+ COPY utils/docker_entrypoint.sh /docker_entrypoint.sh
56
+ ENTRYPOINT ["/docker_entrypoint.sh" ]
0 commit comments