12
12
13
13
FROM ubuntu:14.04.5
14
14
15
+ ENV DOCKER_BUCKET="download.docker.com" \
16
+ DOCKER_VERSION="17.09.0-ce" \
17
+ DOCKER_CHANNEL="stable" \
18
+ DOCKER_SHA256="a9e90a73c3cdfbf238f148e1ec0eaff5eb181f92f35bdd938fd7dab18e1c4647" \
19
+ DIND_COMMIT="3b5fac462d21ca164b3778647420016315289034" \
20
+ DOCKER_COMPOSE_VERSION="1.16.1"
21
+
15
22
# Building git from source code:
16
23
# Ubuntu's default git package is built with broken gnutls. Rebuild git with openssl.
17
24
# #########################################################################
@@ -28,6 +35,7 @@ RUN apt-get update \
28
35
libsqlite3-dev=3.8.2-* libssl-dev=1.0.1f-* libtool=2.4.2-* libwebp-dev=0.4.0-* \
29
36
libxml2-dev=2.9.1+dfsg1-* libxslt1-dev=1.1.28-* libyaml-dev=0.1.4-* make=3.81-* \
30
37
patch=2.7.1-* xz-utils=5.1.1alpha+20120614-* zlib1g-dev=1:1.2.8.dfsg-* unzip=6.0-* curl=7.35.0-* \
38
+ e2fsprogs=1.42.9-* iptables=1.4.21-* xfsprogs=3.1.9ubuntu2 xz-utils=5.1.1alpha+20120614-* \
31
39
&& apt-get install -y -qq less=458-* groff=1.22.2-* \
32
40
&& apt-get -qy build-dep git=1:1.9.1 \
33
41
&& apt-get -qy install libcurl4-openssl-dev=7.35.0-* git-man=1:1.9.1-* liberror-perl=0.17-* \
@@ -40,38 +48,65 @@ RUN apt-get update \
40
48
&& dpkg-buildpackage -rfakeroot -b \
41
49
&& find .. -type f -name "git_*ubuntu*.deb" -exec dpkg -i \{\} \; \
42
50
&& rm -rf /usr/src/git-openssl \
43
- # Install dependencies by all python images equivalent to buildpack-deps:jessie
44
- # on the public repos.
45
51
&& rm -rf /var/lib/apt/lists/* \
46
52
&& apt-get clean
47
53
54
+ # Install Docker
55
+ RUN set -x \
56
+ && curl -fSL "https://${DOCKER_BUCKET}/linux/static/${DOCKER_CHANNEL}/x86_64/docker-${DOCKER_VERSION}.tgz" -o docker.tgz \
57
+ && echo "${DOCKER_SHA256} *docker.tgz" | sha256sum -c - \
58
+ && tar --extract --file docker.tgz --strip-components 1 --directory /usr/local/bin/ \
59
+ && rm docker.tgz \
60
+ && docker -v \
61
+ # set up subuid/subgid so that "--userns-remap=default" works out-of-the-box
62
+ && addgroup dockremap \
63
+ && useradd -g dockremap dockremap \
64
+ && echo 'dockremap:165536:65536' >> /etc/subuid \
65
+ && echo 'dockremap:165536:65536' >> /etc/subgid \
66
+ && wget "https://raw.githubusercontent.com/docker/docker/${DIND_COMMIT}/hack/dind" -O /usr/local/bin/dind \
67
+ && curl -L https://github.com/docker/compose/releases/download/${DOCKER_COMPOSE_VERSION}/docker-compose-Linux-x86_64 > /usr/local/bin/docker-compose \
68
+ && chmod +x /usr/local/bin/dind /usr/local/bin/docker-compose \
69
+ # Ensure docker-compose works
70
+ && docker-compose version
71
+
72
+ # Install dependencies by all python images equivalent to buildpack-deps:jessie
73
+ # on the public repos.
74
+
48
75
RUN wget "https://bootstrap.pypa.io/get-pip.py" -O /tmp/get-pip.py \
49
76
&& python /tmp/get-pip.py \
50
77
&& pip install awscli==1.11.157 \
51
- && rm -fr /var/lib/apt/lists/* /tmp/* /var/tmp/*
52
-
78
+ && rm -fr /var/lib/apt/lists/* /tmp/* /var/tmp/*
79
+
80
+ VOLUME /var/lib/docker
81
+
82
+ COPY dockerd-entrypoint.sh /usr/local/bin/
83
+
84
+ ENTRYPOINT ["dockerd-entrypoint.sh" ]
85
+
53
86
54
87
# Copy install tools
55
88
COPY tools /opt/tools
56
89
57
90
ENV ANDROID_HOME="/usr/local/android-sdk-linux" \
58
- JAVA_HOME="/usr/lib/jvm/java-8-oracle" \
59
- JDK_HOME="/usr/lib/jvm/java-8-oracle" \
91
+ JAVA_HOME="/usr/lib/jvm/java-8-openjdk-amd64" \
92
+ JDK_VERSION="8u141-b15-3~14.04" \
93
+ JDK_HOME="/usr/lib/jvm/java-8-openjdk-amd64" \
94
+ JRE_HOME="/usr/lib/jvm/java-8-openjdk-amd64/jre" \
60
95
JAVA_VERSION="8" \
61
- INSTALLED_GRADLE_VERSIONS="2.10 2.11 2.12 2.13 2.14.1 " \
62
- GRADLE_VERSION="2.14.1 " \
96
+ INSTALLED_GRADLE_VERSIONS="2.14.1 3.5 4.0.2 4.1 4.2.1 4.3.1 4.4 " \
97
+ GRADLE_VERSION="4.4 " \
63
98
ANDROID_TOOLS_VER="24.4.1" \
64
99
ANDROID_TOOLS_SHA1="725bb360f0f7d04eaccff5a2d57abdd49061326d"
65
- ENV PATH="${PATH}:/opt/tools:${ANDROID_HOME}/tools:${ANDROID_HOME}/platform-tools" \
66
- JAVA_PACKAGE_VERSION="8u151-1~webupd8~0"
100
+ ENV PATH="${PATH}:/opt/tools:${ANDROID_HOME}/tools:${ANDROID_HOME}/platform-tools"
67
101
68
102
# Install java8
69
103
RUN apt-get update \
70
104
&& apt-get install -y software-properties-common=0.92.37.8 \
71
- && add-apt-repository -y ppa:webupd8team/java \
105
+ && add-apt-repository -y ppa:openjdk-r/ppa \
72
106
&& (echo oracle-java$JAVA_VERSION-installer shared/accepted-oracle-license-v1-1 select true | /usr/bin/debconf-set-selections) \
73
107
&& apt-get update \
74
- && apt-get install -y oracle-java$JAVA_VERSION-installer=$JAVA_PACKAGE_VERSION \
108
+ && apt-get -y install openjdk-$JAVA_VERSION-jdk=$JDK_VERSION \
109
+ && update-ca-certificates -f \
75
110
&& apt-get install -y -qq less=458-* groff=1.22.2-* \
76
111
&& dpkg --add-architecture i386 \
77
112
&& apt-get update && apt-get install -y --force-yes expect=5.45-* libc6-i386=2.19-* \
@@ -100,5 +135,7 @@ RUN apt-get update \
100
135
&& tar -xzf /tmp/android-sdk.tgz -C /usr/local/ \
101
136
&& chown -R root.root $ANDROID_HOME \
102
137
&& ln -s $ANDROID_HOME/tools/android /usr/bin/android \
103
- && /opt/tools/android-accept-licenses.sh "android update sdk --all --no-ui --filter platform-tools,build-tools-25.0.0 ,android-23,android-24,android-25" \
138
+ && /opt/tools/android-accept-licenses.sh "android update sdk --all --no-ui --filter platform-tools,build-tools-23.0.3,build-tools-24.0.3,build-tools- 25.0.3,build-tools-26.0.2 ,android-23,android-24,android-25,android-26 " \
104
139
&& rm -fr /var/lib/apt/lists/* /tmp/* /var/tmp/*
140
+
141
+ ENTRYPOINT ["dockerd-entrypoint.sh" ]
0 commit comments