Skip to content

Commit

Permalink
Install Docker 17.09 in all the curated images
Browse files Browse the repository at this point in the history
  • Loading branch information
awsnitin committed Feb 15, 2018
1 parent df91eeb commit 9e212fb
Show file tree
Hide file tree
Showing 31 changed files with 947 additions and 87 deletions.
63 changes: 50 additions & 13 deletions ubuntu/android-java-8/24.4.1/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,13 @@

FROM ubuntu:14.04.5

ENV DOCKER_BUCKET="download.docker.com" \
DOCKER_VERSION="17.09.0-ce" \
DOCKER_CHANNEL="stable" \
DOCKER_SHA256="a9e90a73c3cdfbf238f148e1ec0eaff5eb181f92f35bdd938fd7dab18e1c4647" \
DIND_COMMIT="3b5fac462d21ca164b3778647420016315289034" \
DOCKER_COMPOSE_VERSION="1.16.1"

# Building git from source code:
# Ubuntu's default git package is built with broken gnutls. Rebuild git with openssl.
##########################################################################
Expand All @@ -28,6 +35,7 @@ RUN apt-get update \
libsqlite3-dev=3.8.2-* libssl-dev=1.0.1f-* libtool=2.4.2-* libwebp-dev=0.4.0-* \
libxml2-dev=2.9.1+dfsg1-* libxslt1-dev=1.1.28-* libyaml-dev=0.1.4-* make=3.81-* \
patch=2.7.1-* xz-utils=5.1.1alpha+20120614-* zlib1g-dev=1:1.2.8.dfsg-* unzip=6.0-* curl=7.35.0-* \
e2fsprogs=1.42.9-* iptables=1.4.21-* xfsprogs=3.1.9ubuntu2 xz-utils=5.1.1alpha+20120614-* \
&& apt-get install -y -qq less=458-* groff=1.22.2-* \
&& apt-get -qy build-dep git=1:1.9.1 \
&& apt-get -qy install libcurl4-openssl-dev=7.35.0-* git-man=1:1.9.1-* liberror-perl=0.17-* \
Expand All @@ -40,38 +48,65 @@ RUN apt-get update \
&& dpkg-buildpackage -rfakeroot -b \
&& find .. -type f -name "git_*ubuntu*.deb" -exec dpkg -i \{\} \; \
&& rm -rf /usr/src/git-openssl \
# Install dependencies by all python images equivalent to buildpack-deps:jessie
# on the public repos.
&& rm -rf /var/lib/apt/lists/* \
&& apt-get clean

# Install Docker
RUN set -x \
&& curl -fSL "https://${DOCKER_BUCKET}/linux/static/${DOCKER_CHANNEL}/x86_64/docker-${DOCKER_VERSION}.tgz" -o docker.tgz \
&& echo "${DOCKER_SHA256} *docker.tgz" | sha256sum -c - \
&& tar --extract --file docker.tgz --strip-components 1 --directory /usr/local/bin/ \
&& rm docker.tgz \
&& docker -v \
# set up subuid/subgid so that "--userns-remap=default" works out-of-the-box
&& addgroup dockremap \
&& useradd -g dockremap dockremap \
&& echo 'dockremap:165536:65536' >> /etc/subuid \
&& echo 'dockremap:165536:65536' >> /etc/subgid \
&& wget "https://raw.githubusercontent.com/docker/docker/${DIND_COMMIT}/hack/dind" -O /usr/local/bin/dind \
&& curl -L https://github.com/docker/compose/releases/download/${DOCKER_COMPOSE_VERSION}/docker-compose-Linux-x86_64 > /usr/local/bin/docker-compose \
&& chmod +x /usr/local/bin/dind /usr/local/bin/docker-compose \
# Ensure docker-compose works
&& docker-compose version

# Install dependencies by all python images equivalent to buildpack-deps:jessie
# on the public repos.

RUN wget "https://bootstrap.pypa.io/get-pip.py" -O /tmp/get-pip.py \
&& python /tmp/get-pip.py \
&& pip install awscli==1.11.157 \
&& rm -fr /var/lib/apt/lists/* /tmp/* /var/tmp/*

&& rm -fr /var/lib/apt/lists/* /tmp/* /var/tmp/*

VOLUME /var/lib/docker

COPY dockerd-entrypoint.sh /usr/local/bin/

ENTRYPOINT ["dockerd-entrypoint.sh"]


# Copy install tools
COPY tools /opt/tools

ENV ANDROID_HOME="/usr/local/android-sdk-linux" \
JAVA_HOME="/usr/lib/jvm/java-8-oracle" \
JDK_HOME="/usr/lib/jvm/java-8-oracle" \
JAVA_HOME="/usr/lib/jvm/java-8-openjdk-amd64" \
JDK_VERSION="8u141-b15-3~14.04" \
JDK_HOME="/usr/lib/jvm/java-8-openjdk-amd64" \
JRE_HOME="/usr/lib/jvm/java-8-openjdk-amd64/jre" \
JAVA_VERSION="8" \
INSTALLED_GRADLE_VERSIONS="2.10 2.11 2.12 2.13 2.14.1" \
GRADLE_VERSION="2.14.1" \
INSTALLED_GRADLE_VERSIONS="2.14.1 3.5 4.0.2 4.1 4.2.1 4.3.1 4.4" \
GRADLE_VERSION="4.4" \
ANDROID_TOOLS_VER="24.4.1" \
ANDROID_TOOLS_SHA1="725bb360f0f7d04eaccff5a2d57abdd49061326d"
ENV PATH="${PATH}:/opt/tools:${ANDROID_HOME}/tools:${ANDROID_HOME}/platform-tools" \
JAVA_PACKAGE_VERSION="8u151-1~webupd8~0"
ENV PATH="${PATH}:/opt/tools:${ANDROID_HOME}/tools:${ANDROID_HOME}/platform-tools"

# Install java8
RUN apt-get update \
&& apt-get install -y software-properties-common=0.92.37.8 \
&& add-apt-repository -y ppa:webupd8team/java \
&& add-apt-repository -y ppa:openjdk-r/ppa \
&& (echo oracle-java$JAVA_VERSION-installer shared/accepted-oracle-license-v1-1 select true | /usr/bin/debconf-set-selections) \
&& apt-get update \
&& apt-get install -y oracle-java$JAVA_VERSION-installer=$JAVA_PACKAGE_VERSION \
&& apt-get -y install openjdk-$JAVA_VERSION-jdk=$JDK_VERSION \
&& update-ca-certificates -f \
&& apt-get install -y -qq less=458-* groff=1.22.2-* \
&& dpkg --add-architecture i386 \
&& apt-get update && apt-get install -y --force-yes expect=5.45-* libc6-i386=2.19-* \
Expand Down Expand Up @@ -100,5 +135,7 @@ RUN apt-get update \
&& tar -xzf /tmp/android-sdk.tgz -C /usr/local/ \
&& chown -R root.root $ANDROID_HOME \
&& ln -s $ANDROID_HOME/tools/android /usr/bin/android \
&& /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" \
&& /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" \
&& rm -fr /var/lib/apt/lists/* /tmp/* /var/tmp/*

ENTRYPOINT ["dockerd-entrypoint.sh"]
23 changes: 23 additions & 0 deletions ubuntu/android-java-8/24.4.1/dockerd-entrypoint.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
#!/bin/sh
set -e

/usr/local/bin/dockerd \
--host=unix:///var/run/docker.sock \
--host=tcp://0.0.0.0:2375 \
--storage-driver=overlay &>/var/log/docker.log &


tries=0
d_timeout=60
until docker info >/dev/null 2>&1
do
if [ "$tries" -gt "$d_timeout" ]; then
cat /var/log/docker.log
echo 'Timed out trying to connect to internal docker host.' >&2
exit 1
fi
tries=$(( $tries + 1 ))
sleep 1
done

eval "$@"
46 changes: 22 additions & 24 deletions ubuntu/docker/17.09.0/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,13 @@

FROM ubuntu:14.04.5

ENV DOCKER_BUCKET="download.docker.com" \
DOCKER_VERSION="17.09.0-ce" \
DOCKER_CHANNEL="stable" \
DOCKER_SHA256="a9e90a73c3cdfbf238f148e1ec0eaff5eb181f92f35bdd938fd7dab18e1c4647" \
DIND_COMMIT="3b5fac462d21ca164b3778647420016315289034" \
DOCKER_COMPOSE_VERSION="1.16.1"

# Building git from source code:
# Ubuntu's default git package is built with broken gnutls. Rebuild git with openssl.
##########################################################################
Expand All @@ -28,6 +35,7 @@ RUN apt-get update \
libsqlite3-dev=3.8.2-* libssl-dev=1.0.1f-* libtool=2.4.2-* libwebp-dev=0.4.0-* \
libxml2-dev=2.9.1+dfsg1-* libxslt1-dev=1.1.28-* libyaml-dev=0.1.4-* make=3.81-* \
patch=2.7.1-* xz-utils=5.1.1alpha+20120614-* zlib1g-dev=1:1.2.8.dfsg-* unzip=6.0-* curl=7.35.0-* \
e2fsprogs=1.42.9-* iptables=1.4.21-* xfsprogs=3.1.9ubuntu2 xz-utils=5.1.1alpha+20120614-* \
&& apt-get install -y -qq less=458-* groff=1.22.2-* \
&& apt-get -qy build-dep git=1:1.9.1 \
&& apt-get -qy install libcurl4-openssl-dev=7.35.0-* git-man=1:1.9.1-* liberror-perl=0.17-* \
Expand All @@ -40,36 +48,16 @@ RUN apt-get update \
&& dpkg-buildpackage -rfakeroot -b \
&& find .. -type f -name "git_*ubuntu*.deb" -exec dpkg -i \{\} \; \
&& rm -rf /usr/src/git-openssl \
# Install dependencies by all python images equivalent to buildpack-deps:jessie
# on the public repos.
&& rm -rf /var/lib/apt/lists/* \
&& apt-get clean

RUN wget "https://bootstrap.pypa.io/get-pip.py" -O /tmp/get-pip.py \
&& python /tmp/get-pip.py \
&& pip install awscli==1.11.157 \
&& rm -fr /var/lib/apt/lists/* /tmp/* /var/tmp/*


ENV DOCKER_BUCKET="download.docker.com" \
DOCKER_VERSION="17.09.0-ce" \
DOCKER_CHANNEL="stable" \
DOCKER_SHA256="a9e90a73c3cdfbf238f148e1ec0eaff5eb181f92f35bdd938fd7dab18e1c4647" \
DIND_COMMIT="3b5fac462d21ca164b3778647420016315289034" \
DOCKER_COMPOSE_VERSION="1.16.1"

COPY dockerd-entrypoint.sh /usr/local/bin/

# From the docker:17.09
# Install Docker
RUN set -x \
&& curl -fSL "https://${DOCKER_BUCKET}/linux/static/${DOCKER_CHANNEL}/x86_64/docker-${DOCKER_VERSION}.tgz" -o docker.tgz \
&& echo "${DOCKER_SHA256} *docker.tgz" | sha256sum -c - \
&& tar --extract --file docker.tgz --strip-components 1 --directory /usr/local/bin/ \
&& rm docker.tgz \
&& docker -v \
# From the docker dind 17.09
&& apt-get update && apt-get install -y --no-install-recommends \
e2fsprogs=1.42.9-* iptables=1.4.21-* xfsprogs=3.1.9ubuntu2 xz-utils=5.1.1alpha+20120614-* \
# set up subuid/subgid so that "--userns-remap=default" works out-of-the-box
&& addgroup dockremap \
&& useradd -g dockremap dockremap \
Expand All @@ -79,11 +67,21 @@ RUN set -x \
&& curl -L https://github.com/docker/compose/releases/download/${DOCKER_COMPOSE_VERSION}/docker-compose-Linux-x86_64 > /usr/local/bin/docker-compose \
&& chmod +x /usr/local/bin/dind /usr/local/bin/docker-compose \
# Ensure docker-compose works
&& docker-compose version \
&& rm -rf /var/lib/apt/lists/* \
&& apt-get clean
&& docker-compose version

# Install dependencies by all python images equivalent to buildpack-deps:jessie
# on the public repos.

RUN wget "https://bootstrap.pypa.io/get-pip.py" -O /tmp/get-pip.py \
&& python /tmp/get-pip.py \
&& pip install awscli==1.11.157 \
&& rm -fr /var/lib/apt/lists/* /tmp/* /var/tmp/*

VOLUME /var/lib/docker

COPY dockerd-entrypoint.sh /usr/local/bin/

ENTRYPOINT ["dockerd-entrypoint.sh"]


ENTRYPOINT ["dockerd-entrypoint.sh"]
43 changes: 39 additions & 4 deletions ubuntu/dot-net/core-1/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,13 @@

FROM ubuntu:14.04.5

ENV DOCKER_BUCKET="download.docker.com" \
DOCKER_VERSION="17.09.0-ce" \
DOCKER_CHANNEL="stable" \
DOCKER_SHA256="a9e90a73c3cdfbf238f148e1ec0eaff5eb181f92f35bdd938fd7dab18e1c4647" \
DIND_COMMIT="3b5fac462d21ca164b3778647420016315289034" \
DOCKER_COMPOSE_VERSION="1.16.1"

# Building git from source code:
# Ubuntu's default git package is built with broken gnutls. Rebuild git with openssl.
##########################################################################
Expand All @@ -28,6 +35,7 @@ RUN apt-get update \
libsqlite3-dev=3.8.2-* libssl-dev=1.0.1f-* libtool=2.4.2-* libwebp-dev=0.4.0-* \
libxml2-dev=2.9.1+dfsg1-* libxslt1-dev=1.1.28-* libyaml-dev=0.1.4-* make=3.81-* \
patch=2.7.1-* xz-utils=5.1.1alpha+20120614-* zlib1g-dev=1:1.2.8.dfsg-* unzip=6.0-* curl=7.35.0-* \
e2fsprogs=1.42.9-* iptables=1.4.21-* xfsprogs=3.1.9ubuntu2 xz-utils=5.1.1alpha+20120614-* \
&& apt-get install -y -qq less=458-* groff=1.22.2-* \
&& apt-get -qy build-dep git=1:1.9.1 \
&& apt-get -qy install libcurl4-openssl-dev=7.35.0-* git-man=1:1.9.1-* liberror-perl=0.17-* \
Expand All @@ -40,16 +48,41 @@ RUN apt-get update \
&& dpkg-buildpackage -rfakeroot -b \
&& find .. -type f -name "git_*ubuntu*.deb" -exec dpkg -i \{\} \; \
&& rm -rf /usr/src/git-openssl \
# Install dependencies by all python images equivalent to buildpack-deps:jessie
# on the public repos.
&& rm -rf /var/lib/apt/lists/* \
&& apt-get clean

# Install Docker
RUN set -x \
&& curl -fSL "https://${DOCKER_BUCKET}/linux/static/${DOCKER_CHANNEL}/x86_64/docker-${DOCKER_VERSION}.tgz" -o docker.tgz \
&& echo "${DOCKER_SHA256} *docker.tgz" | sha256sum -c - \
&& tar --extract --file docker.tgz --strip-components 1 --directory /usr/local/bin/ \
&& rm docker.tgz \
&& docker -v \
# set up subuid/subgid so that "--userns-remap=default" works out-of-the-box
&& addgroup dockremap \
&& useradd -g dockremap dockremap \
&& echo 'dockremap:165536:65536' >> /etc/subuid \
&& echo 'dockremap:165536:65536' >> /etc/subgid \
&& wget "https://raw.githubusercontent.com/docker/docker/${DIND_COMMIT}/hack/dind" -O /usr/local/bin/dind \
&& curl -L https://github.com/docker/compose/releases/download/${DOCKER_COMPOSE_VERSION}/docker-compose-Linux-x86_64 > /usr/local/bin/docker-compose \
&& chmod +x /usr/local/bin/dind /usr/local/bin/docker-compose \
# Ensure docker-compose works
&& docker-compose version

# Install dependencies by all python images equivalent to buildpack-deps:jessie
# on the public repos.

RUN wget "https://bootstrap.pypa.io/get-pip.py" -O /tmp/get-pip.py \
&& python /tmp/get-pip.py \
&& pip install awscli==1.11.157 \
&& rm -fr /var/lib/apt/lists/* /tmp/* /var/tmp/*

&& rm -fr /var/lib/apt/lists/* /tmp/* /var/tmp/*

VOLUME /var/lib/docker

COPY dockerd-entrypoint.sh /usr/local/bin/

ENTRYPOINT ["dockerd-entrypoint.sh"]

# Install .NET CLI dependencies
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
Expand Down Expand Up @@ -87,3 +120,5 @@ RUN mkdir warmup \
&& cd .. \
&& rm -rf warmup \
&& rm -rf /tmp/NuGetScratch

ENTRYPOINT ["dockerd-entrypoint.sh"]
23 changes: 23 additions & 0 deletions ubuntu/dot-net/core-1/dockerd-entrypoint.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
#!/bin/sh
set -e

/usr/local/bin/dockerd \
--host=unix:///var/run/docker.sock \
--host=tcp://0.0.0.0:2375 \
--storage-driver=overlay &>/var/log/docker.log &


tries=0
d_timeout=60
until docker info >/dev/null 2>&1
do
if [ "$tries" -gt "$d_timeout" ]; then
cat /var/log/docker.log
echo 'Timed out trying to connect to internal docker host.' >&2
exit 1
fi
tries=$(( $tries + 1 ))
sleep 1
done

eval "$@"
43 changes: 39 additions & 4 deletions ubuntu/dot-net/core-2/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,13 @@

FROM ubuntu:14.04.5

ENV DOCKER_BUCKET="download.docker.com" \
DOCKER_VERSION="17.09.0-ce" \
DOCKER_CHANNEL="stable" \
DOCKER_SHA256="a9e90a73c3cdfbf238f148e1ec0eaff5eb181f92f35bdd938fd7dab18e1c4647" \
DIND_COMMIT="3b5fac462d21ca164b3778647420016315289034" \
DOCKER_COMPOSE_VERSION="1.16.1"

# Building git from source code:
# Ubuntu's default git package is built with broken gnutls. Rebuild git with openssl.
##########################################################################
Expand All @@ -28,6 +35,7 @@ RUN apt-get update \
libsqlite3-dev=3.8.2-* libssl-dev=1.0.1f-* libtool=2.4.2-* libwebp-dev=0.4.0-* \
libxml2-dev=2.9.1+dfsg1-* libxslt1-dev=1.1.28-* libyaml-dev=0.1.4-* make=3.81-* \
patch=2.7.1-* xz-utils=5.1.1alpha+20120614-* zlib1g-dev=1:1.2.8.dfsg-* unzip=6.0-* curl=7.35.0-* \
e2fsprogs=1.42.9-* iptables=1.4.21-* xfsprogs=3.1.9ubuntu2 xz-utils=5.1.1alpha+20120614-* \
&& apt-get install -y -qq less=458-* groff=1.22.2-* \
&& apt-get -qy build-dep git=1:1.9.1 \
&& apt-get -qy install libcurl4-openssl-dev=7.35.0-* git-man=1:1.9.1-* liberror-perl=0.17-* \
Expand All @@ -40,16 +48,41 @@ RUN apt-get update \
&& dpkg-buildpackage -rfakeroot -b \
&& find .. -type f -name "git_*ubuntu*.deb" -exec dpkg -i \{\} \; \
&& rm -rf /usr/src/git-openssl \
# Install dependencies by all python images equivalent to buildpack-deps:jessie
# on the public repos.
&& rm -rf /var/lib/apt/lists/* \
&& apt-get clean

# Install Docker
RUN set -x \
&& curl -fSL "https://${DOCKER_BUCKET}/linux/static/${DOCKER_CHANNEL}/x86_64/docker-${DOCKER_VERSION}.tgz" -o docker.tgz \
&& echo "${DOCKER_SHA256} *docker.tgz" | sha256sum -c - \
&& tar --extract --file docker.tgz --strip-components 1 --directory /usr/local/bin/ \
&& rm docker.tgz \
&& docker -v \
# set up subuid/subgid so that "--userns-remap=default" works out-of-the-box
&& addgroup dockremap \
&& useradd -g dockremap dockremap \
&& echo 'dockremap:165536:65536' >> /etc/subuid \
&& echo 'dockremap:165536:65536' >> /etc/subgid \
&& wget "https://raw.githubusercontent.com/docker/docker/${DIND_COMMIT}/hack/dind" -O /usr/local/bin/dind \
&& curl -L https://github.com/docker/compose/releases/download/${DOCKER_COMPOSE_VERSION}/docker-compose-Linux-x86_64 > /usr/local/bin/docker-compose \
&& chmod +x /usr/local/bin/dind /usr/local/bin/docker-compose \
# Ensure docker-compose works
&& docker-compose version

# Install dependencies by all python images equivalent to buildpack-deps:jessie
# on the public repos.

RUN wget "https://bootstrap.pypa.io/get-pip.py" -O /tmp/get-pip.py \
&& python /tmp/get-pip.py \
&& pip install awscli==1.11.157 \
&& rm -fr /var/lib/apt/lists/* /tmp/* /var/tmp/*

&& rm -fr /var/lib/apt/lists/* /tmp/* /var/tmp/*

VOLUME /var/lib/docker

COPY dockerd-entrypoint.sh /usr/local/bin/

ENTRYPOINT ["dockerd-entrypoint.sh"]


# Install .NET CLI dependencies
RUN apt-get update \
Expand Down Expand Up @@ -90,3 +123,5 @@ RUN mkdir warmup \
&& cd .. \
&& rm -rf warmup \
&& rm -rf /tmp/NuGetScratch

ENTRYPOINT ["dockerd-entrypoint.sh"]
Loading

0 comments on commit 9e212fb

Please sign in to comment.