Skip to content

Commit

Permalink
alpine: Don't install ca-certificates on Alpine 3.7+
Browse files Browse the repository at this point in the history
* CA certs come bundled on Alpine 3.7+
* On Alpine 3.6, rather install libressl which also include CA certs,
  allows us to use wget, and doesn't increase the size over
  ca-certificates
  • Loading branch information
JayH5 committed Jul 23, 2018
1 parent 48284b4 commit 2eaaa4a
Show file tree
Hide file tree
Showing 14 changed files with 32 additions and 116 deletions.
11 changes: 2 additions & 9 deletions 2.7/alpine3.6/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -9,17 +9,15 @@ ENV LANG C.UTF-8
# https://github.com/docker-library/python/issues/147
ENV PYTHONIOENCODING UTF-8

# install ca-certificates so that HTTPS works consistently
# the other runtime dependencies for Python are installed later
RUN apk add --no-cache ca-certificates
# install libressl so that HTTPS works on Alpine <3.7
RUN apk add --no-cache libressl

ENV GPG_KEY C01E1CAD5EA2C4F0B8E3571504C367C218ADD4FF
ENV PYTHON_VERSION 2.7.15

RUN set -ex \
&& apk add --no-cache --virtual .fetch-deps \
gnupg \
libressl \
tar \
xz \
\
Expand All @@ -41,7 +39,6 @@ RUN set -ex \
gcc \
gdbm-dev \
libc-dev \
libressl \
libressl-dev \
linux-headers \
make \
Expand Down Expand Up @@ -89,13 +86,9 @@ RUN set -ex \
ENV PYTHON_PIP_VERSION 18.0

RUN set -ex; \
\
apk add --no-cache --virtual .fetch-deps libressl; \
\
wget -O get-pip.py 'https://bootstrap.pypa.io/get-pip.py'; \
\
apk del .fetch-deps; \
\
python get-pip.py \
--disable-pip-version-check \
--no-cache-dir \
Expand Down
10 changes: 2 additions & 8 deletions 2.7/alpine3.7/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -9,17 +9,15 @@ ENV LANG C.UTF-8
# https://github.com/docker-library/python/issues/147
ENV PYTHONIOENCODING UTF-8

# install ca-certificates so that HTTPS works consistently
# the other runtime dependencies for Python are installed later
RUN apk add --no-cache ca-certificates
# install libressl so that HTTPS works on Alpine <3.7
# RUN apk add --no-cache libressl

ENV GPG_KEY C01E1CAD5EA2C4F0B8E3571504C367C218ADD4FF
ENV PYTHON_VERSION 2.7.15

RUN set -ex \
&& apk add --no-cache --virtual .fetch-deps \
gnupg \
libressl \
tar \
xz \
\
Expand Down Expand Up @@ -91,13 +89,9 @@ RUN set -ex \
ENV PYTHON_PIP_VERSION 18.0

RUN set -ex; \
\
apk add --no-cache --virtual .fetch-deps libressl; \
\
wget -O get-pip.py 'https://bootstrap.pypa.io/get-pip.py'; \
\
apk del .fetch-deps; \
\
python get-pip.py \
--disable-pip-version-check \
--no-cache-dir \
Expand Down
10 changes: 2 additions & 8 deletions 2.7/alpine3.8/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -9,17 +9,15 @@ ENV LANG C.UTF-8
# https://github.com/docker-library/python/issues/147
ENV PYTHONIOENCODING UTF-8

# install ca-certificates so that HTTPS works consistently
# the other runtime dependencies for Python are installed later
RUN apk add --no-cache ca-certificates
# install libressl so that HTTPS works on Alpine <3.7
# RUN apk add --no-cache libressl

ENV GPG_KEY C01E1CAD5EA2C4F0B8E3571504C367C218ADD4FF
ENV PYTHON_VERSION 2.7.15

RUN set -ex \
&& apk add --no-cache --virtual .fetch-deps \
gnupg \
libressl \
tar \
xz \
\
Expand Down Expand Up @@ -91,13 +89,9 @@ RUN set -ex \
ENV PYTHON_PIP_VERSION 18.0

RUN set -ex; \
\
apk add --no-cache --virtual .fetch-deps libressl; \
\
wget -O get-pip.py 'https://bootstrap.pypa.io/get-pip.py'; \
\
apk del .fetch-deps; \
\
python get-pip.py \
--disable-pip-version-check \
--no-cache-dir \
Expand Down
11 changes: 2 additions & 9 deletions 3.4/alpine3.7/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -13,17 +13,15 @@ ENV PATH /usr/local/bin:$PATH
# > At the moment, setting "LANG=C" on a Linux system *fundamentally breaks Python 3*, and that's not OK.
ENV LANG C.UTF-8

# install ca-certificates so that HTTPS works consistently
# the other runtime dependencies for Python are installed later
RUN apk add --no-cache ca-certificates
# install libressl so that HTTPS works on Alpine <3.7
# RUN apk add --no-cache libressl

ENV GPG_KEY 97FC712E4C024BBEA48A61ED3A5CA953F73C700D
ENV PYTHON_VERSION 3.4.8

RUN set -ex \
&& apk add --no-cache --virtual .fetch-deps \
gnupg \
libressl \
tar \
xz \
\
Expand All @@ -48,7 +46,6 @@ RUN set -ex \
gdbm-dev \
libc-dev \
libffi-dev \
libressl \
libressl-dev \
linux-headers \
make \
Expand Down Expand Up @@ -107,13 +104,9 @@ RUN cd /usr/local/bin \
ENV PYTHON_PIP_VERSION 18.0

RUN set -ex; \
\
apk add --no-cache --virtual .fetch-deps libressl; \
\
wget -O get-pip.py 'https://bootstrap.pypa.io/get-pip.py'; \
\
apk del .fetch-deps; \
\
python get-pip.py \
--disable-pip-version-check \
--no-cache-dir \
Expand Down
11 changes: 2 additions & 9 deletions 3.4/alpine3.8/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -13,17 +13,15 @@ ENV PATH /usr/local/bin:$PATH
# > At the moment, setting "LANG=C" on a Linux system *fundamentally breaks Python 3*, and that's not OK.
ENV LANG C.UTF-8

# install ca-certificates so that HTTPS works consistently
# the other runtime dependencies for Python are installed later
RUN apk add --no-cache ca-certificates
# install libressl so that HTTPS works on Alpine <3.7
# RUN apk add --no-cache libressl

ENV GPG_KEY 97FC712E4C024BBEA48A61ED3A5CA953F73C700D
ENV PYTHON_VERSION 3.4.8

RUN set -ex \
&& apk add --no-cache --virtual .fetch-deps \
gnupg \
libressl \
tar \
xz \
\
Expand All @@ -48,7 +46,6 @@ RUN set -ex \
gdbm-dev \
libc-dev \
libffi-dev \
libressl \
libressl-dev \
linux-headers \
make \
Expand Down Expand Up @@ -107,13 +104,9 @@ RUN cd /usr/local/bin \
ENV PYTHON_PIP_VERSION 18.0

RUN set -ex; \
\
apk add --no-cache --virtual .fetch-deps libressl; \
\
wget -O get-pip.py 'https://bootstrap.pypa.io/get-pip.py'; \
\
apk del .fetch-deps; \
\
python get-pip.py \
--disable-pip-version-check \
--no-cache-dir \
Expand Down
11 changes: 2 additions & 9 deletions 3.5/alpine3.7/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -13,17 +13,15 @@ ENV PATH /usr/local/bin:$PATH
# > At the moment, setting "LANG=C" on a Linux system *fundamentally breaks Python 3*, and that's not OK.
ENV LANG C.UTF-8

# install ca-certificates so that HTTPS works consistently
# the other runtime dependencies for Python are installed later
RUN apk add --no-cache ca-certificates
# install libressl so that HTTPS works on Alpine <3.7
# RUN apk add --no-cache libressl

ENV GPG_KEY 97FC712E4C024BBEA48A61ED3A5CA953F73C700D
ENV PYTHON_VERSION 3.5.5

RUN set -ex \
&& apk add --no-cache --virtual .fetch-deps \
gnupg \
libressl \
tar \
xz \
\
Expand All @@ -48,7 +46,6 @@ RUN set -ex \
gdbm-dev \
libc-dev \
libffi-dev \
libressl \
libressl-dev \
linux-headers \
make \
Expand Down Expand Up @@ -107,13 +104,9 @@ RUN cd /usr/local/bin \
ENV PYTHON_PIP_VERSION 18.0

RUN set -ex; \
\
apk add --no-cache --virtual .fetch-deps libressl; \
\
wget -O get-pip.py 'https://bootstrap.pypa.io/get-pip.py'; \
\
apk del .fetch-deps; \
\
python get-pip.py \
--disable-pip-version-check \
--no-cache-dir \
Expand Down
11 changes: 2 additions & 9 deletions 3.5/alpine3.8/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -13,17 +13,15 @@ ENV PATH /usr/local/bin:$PATH
# > At the moment, setting "LANG=C" on a Linux system *fundamentally breaks Python 3*, and that's not OK.
ENV LANG C.UTF-8

# install ca-certificates so that HTTPS works consistently
# the other runtime dependencies for Python are installed later
RUN apk add --no-cache ca-certificates
# install libressl so that HTTPS works on Alpine <3.7
# RUN apk add --no-cache libressl

ENV GPG_KEY 97FC712E4C024BBEA48A61ED3A5CA953F73C700D
ENV PYTHON_VERSION 3.5.5

RUN set -ex \
&& apk add --no-cache --virtual .fetch-deps \
gnupg \
openssl \
tar \
xz \
\
Expand All @@ -48,7 +46,6 @@ RUN set -ex \
gdbm-dev \
libc-dev \
libffi-dev \
openssl \
openssl-dev \
linux-headers \
make \
Expand Down Expand Up @@ -107,13 +104,9 @@ RUN cd /usr/local/bin \
ENV PYTHON_PIP_VERSION 18.0

RUN set -ex; \
\
apk add --no-cache --virtual .fetch-deps openssl; \
\
wget -O get-pip.py 'https://bootstrap.pypa.io/get-pip.py'; \
\
apk del .fetch-deps; \
\
python get-pip.py \
--disable-pip-version-check \
--no-cache-dir \
Expand Down
11 changes: 2 additions & 9 deletions 3.6/alpine3.6/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -13,17 +13,15 @@ ENV PATH /usr/local/bin:$PATH
# > At the moment, setting "LANG=C" on a Linux system *fundamentally breaks Python 3*, and that's not OK.
ENV LANG C.UTF-8

# install ca-certificates so that HTTPS works consistently
# the other runtime dependencies for Python are installed later
RUN apk add --no-cache ca-certificates
# install libressl so that HTTPS works on Alpine <3.7
RUN apk add --no-cache libressl

ENV GPG_KEY 0D96DF4D4110E5C43FBFB17F2D347EA6AA65421D
ENV PYTHON_VERSION 3.6.6

RUN set -ex \
&& apk add --no-cache --virtual .fetch-deps \
gnupg \
libressl \
tar \
xz \
\
Expand All @@ -48,7 +46,6 @@ RUN set -ex \
gdbm-dev \
libc-dev \
libffi-dev \
libressl \
libressl-dev \
linux-headers \
make \
Expand Down Expand Up @@ -107,13 +104,9 @@ RUN cd /usr/local/bin \
ENV PYTHON_PIP_VERSION 18.0

RUN set -ex; \
\
apk add --no-cache --virtual .fetch-deps libressl; \
\
wget -O get-pip.py 'https://bootstrap.pypa.io/get-pip.py'; \
\
apk del .fetch-deps; \
\
python get-pip.py \
--disable-pip-version-check \
--no-cache-dir \
Expand Down
11 changes: 2 additions & 9 deletions 3.6/alpine3.7/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -13,17 +13,15 @@ ENV PATH /usr/local/bin:$PATH
# > At the moment, setting "LANG=C" on a Linux system *fundamentally breaks Python 3*, and that's not OK.
ENV LANG C.UTF-8

# install ca-certificates so that HTTPS works consistently
# the other runtime dependencies for Python are installed later
RUN apk add --no-cache ca-certificates
# install libressl so that HTTPS works on Alpine <3.7
# RUN apk add --no-cache libressl

ENV GPG_KEY 0D96DF4D4110E5C43FBFB17F2D347EA6AA65421D
ENV PYTHON_VERSION 3.6.6

RUN set -ex \
&& apk add --no-cache --virtual .fetch-deps \
gnupg \
libressl \
tar \
xz \
\
Expand All @@ -49,7 +47,6 @@ RUN set -ex \
libc-dev \
libffi-dev \
libnsl-dev \
libressl \
libressl-dev \
libtirpc-dev \
linux-headers \
Expand Down Expand Up @@ -109,13 +106,9 @@ RUN cd /usr/local/bin \
ENV PYTHON_PIP_VERSION 18.0

RUN set -ex; \
\
apk add --no-cache --virtual .fetch-deps libressl; \
\
wget -O get-pip.py 'https://bootstrap.pypa.io/get-pip.py'; \
\
apk del .fetch-deps; \
\
python get-pip.py \
--disable-pip-version-check \
--no-cache-dir \
Expand Down
Loading

0 comments on commit 2eaaa4a

Please sign in to comment.