Skip to content

Commit 593d38c

Browse files
committed
updated latest alpine dependencies
Signed-off-by: Daniel Schulz <danielschulz2005@hotmail.com>
1 parent 92ed9fe commit 593d38c

File tree

5 files changed

+747
-0
lines changed

5 files changed

+747
-0
lines changed

3.10-rc/alpine3.13/Dockerfile

Lines changed: 168 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
<<<<<<< HEAD
12

23
FROM danielschulz/alpine:3.13.1
34

@@ -21,12 +22,20 @@ RUN set -eux; \
2122
;
2223
# other runtime dependencies for Python are installed later
2324

25+
<<<<<<<< HEAD:3.10-rc/alpine3.13/Dockerfile
2426
# use 3.6, 3.7, 3.8, 3.9, (as of now, use "master" for 3.10)
2527
ARG CPYTHON_GIT_URI="https://github.com/danielschulz/cpython.git"
2628
ARG CPYTHON_GIT_REFERENCE="v3.10.256a_20201228_1455"
2729
ARG PYTHON_VERSION=${CPYTHON_GIT_REFERENCE}
2830

2931
ENV PYTHON_VERSION=${PYTHON_VERSION}
32+
|||||||| 0559964:3.9/alpine3.12/Dockerfile
33+
ENV GPG_KEY E3FF2839C048B25C084DEBE9B26995E310250568
34+
ENV PYTHON_VERSION 3.9.0
35+
========
36+
ENV GPG_KEY E3FF2839C048B25C084DEBE9B26995E310250568
37+
ENV PYTHON_VERSION 3.9.2
38+
>>>>>>>> ec67f96b61c55ba35acd6c553f21641c5bf0ccc5:3.9/alpine3.12/Dockerfile
3039

3140
RUN set -ex \
3241
&& apk add --no-cache --virtual .fetch-deps \
@@ -114,10 +123,24 @@ RUN cd /usr/local/bin \
114123
&& ln -s python3-config python-config
115124

116125
# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
126+
<<<<<<<< HEAD:3.10-rc/alpine3.13/Dockerfile
117127
ENV PYTHON_PIP_VERSION 20.3.3
128+
|||||||| 0559964:3.9/alpine3.12/Dockerfile
129+
ENV PYTHON_PIP_VERSION 20.3.1
130+
========
131+
ENV PYTHON_PIP_VERSION 21.0.1
132+
>>>>>>>> ec67f96b61c55ba35acd6c553f21641c5bf0ccc5:3.9/alpine3.12/Dockerfile
118133
# https://github.com/pypa/get-pip
134+
<<<<<<<< HEAD:3.10-rc/alpine3.13/Dockerfile
119135
ENV PYTHON_GET_PIP_URL https://raw.githubusercontent.com/pypa/get-pip/${PYTHON_PIP_VERSION}/get-pip.py
120136
ENV PYTHON_GET_PIP_SHA256 6a0b13826862f33c13b614a921d36253bfa1ae779c5fbf569876f3585057e9d2
137+
|||||||| 0559964:3.9/alpine3.12/Dockerfile
138+
ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/91630a4867b1f93ba0a12aa81d0ec4ecc1e7eeb9/get-pip.py
139+
ENV PYTHON_GET_PIP_SHA256 d48ae68f297cac54db17e4107b800faae0e5210131f9f386c30c0166bf8d81b7
140+
========
141+
ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/b60e2320d9e8d02348525bd74e871e466afdf77c/get-pip.py
142+
ENV PYTHON_GET_PIP_SHA256 c3b81e5d06371e135fb3156dc7d8fd6270735088428c4a9a5ec1f342e2024565
143+
>>>>>>>> ec67f96b61c55ba35acd6c553f21641c5bf0ccc5:3.9/alpine3.12/Dockerfile
121144

122145
RUN set -ex; \
123146
\
@@ -143,3 +166,148 @@ RUN echo -e "Current Python version is $( python -V ) \n(found in $( which pytho
143166
echo -e "Current PIP version is $( pip -V ) \n(found in $( which pip ))."
144167

145168
CMD ["python3"]
169+
||||||| 0559964
170+
=======
171+
#
172+
# NOTE: THIS DOCKERFILE IS GENERATED VIA "update.sh"
173+
#
174+
# PLEASE DO NOT EDIT IT DIRECTLY.
175+
#
176+
177+
FROM alpine:3.13
178+
179+
# ensure local python is preferred over distribution python
180+
ENV PATH /usr/local/bin:$PATH
181+
182+
# http://bugs.python.org/issue19846
183+
# > At the moment, setting "LANG=C" on a Linux system *fundamentally breaks Python 3*, and that's not OK.
184+
ENV LANG C.UTF-8
185+
186+
# runtime dependencies
187+
RUN set -eux; \
188+
apk add --no-cache \
189+
# install ca-certificates so that HTTPS works consistently
190+
ca-certificates \
191+
# and tzdata for PEP 615 (https://www.python.org/dev/peps/pep-0615/)
192+
tzdata \
193+
;
194+
# other runtime dependencies for Python are installed later
195+
196+
ENV GPG_KEY A035C8C19219BA821ECEA86B64E628F8D684696D
197+
ENV PYTHON_VERSION 3.10.0a6
198+
199+
RUN set -ex \
200+
&& apk add --no-cache --virtual .fetch-deps \
201+
gnupg \
202+
tar \
203+
xz \
204+
\
205+
&& wget -O python.tar.xz "https://www.python.org/ftp/python/${PYTHON_VERSION%%[a-z]*}/Python-$PYTHON_VERSION.tar.xz" \
206+
&& wget -O python.tar.xz.asc "https://www.python.org/ftp/python/${PYTHON_VERSION%%[a-z]*}/Python-$PYTHON_VERSION.tar.xz.asc" \
207+
&& export GNUPGHOME="$(mktemp -d)" \
208+
&& gpg --batch --keyserver ha.pool.sks-keyservers.net --recv-keys "$GPG_KEY" \
209+
&& gpg --batch --verify python.tar.xz.asc python.tar.xz \
210+
&& { command -v gpgconf > /dev/null && gpgconf --kill all || :; } \
211+
&& rm -rf "$GNUPGHOME" python.tar.xz.asc \
212+
&& mkdir -p /usr/src/python \
213+
&& tar -xJC /usr/src/python --strip-components=1 -f python.tar.xz \
214+
&& rm python.tar.xz \
215+
\
216+
&& apk add --no-cache --virtual .build-deps \
217+
bluez-dev \
218+
bzip2-dev \
219+
coreutils \
220+
dpkg-dev dpkg \
221+
expat-dev \
222+
findutils \
223+
gcc \
224+
gdbm-dev \
225+
libc-dev \
226+
libffi-dev \
227+
libnsl-dev \
228+
libtirpc-dev \
229+
linux-headers \
230+
make \
231+
ncurses-dev \
232+
openssl-dev \
233+
pax-utils \
234+
readline-dev \
235+
sqlite-dev \
236+
tcl-dev \
237+
tk \
238+
tk-dev \
239+
util-linux-dev \
240+
xz-dev \
241+
zlib-dev \
242+
# add build deps before removing fetch deps in case there's overlap
243+
&& apk del --no-network .fetch-deps \
244+
\
245+
&& cd /usr/src/python \
246+
&& gnuArch="$(dpkg-architecture --query DEB_BUILD_GNU_TYPE)" \
247+
&& ./configure \
248+
--build="$gnuArch" \
249+
--enable-loadable-sqlite-extensions \
250+
--enable-optimizations \
251+
--enable-option-checking=fatal \
252+
--enable-shared \
253+
--with-system-expat \
254+
--with-system-ffi \
255+
--without-ensurepip \
256+
&& make -j "$(nproc)" \
257+
# set thread stack size to 1MB so we don't segfault before we hit sys.getrecursionlimit()
258+
# https://github.com/alpinelinux/aports/commit/2026e1259422d4e0cf92391ca2d3844356c649d0
259+
EXTRA_CFLAGS="-DTHREAD_STACK_SIZE=0x100000" \
260+
LDFLAGS="-Wl,--strip-all" \
261+
&& make install \
262+
&& rm -rf /usr/src/python \
263+
\
264+
&& find /usr/local -depth \
265+
\( \
266+
\( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \
267+
-o \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name '*.a' \) \) \
268+
\) -exec rm -rf '{}' + \
269+
\
270+
&& find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec scanelf --needed --nobanner --format '%n#p' '{}' ';' \
271+
| tr ',' '\n' \
272+
| sort -u \
273+
| awk 'system("[ -e /usr/local/lib/" $1 " ]") == 0 { next } { print "so:" $1 }' \
274+
| xargs -rt apk add --no-cache --virtual .python-rundeps \
275+
&& apk del --no-network .build-deps \
276+
\
277+
&& python3 --version
278+
279+
# make some useful symlinks that are expected to exist
280+
RUN cd /usr/local/bin \
281+
&& ln -s idle3 idle \
282+
&& ln -s pydoc3 pydoc \
283+
&& ln -s python3 python \
284+
&& ln -s python3-config python-config
285+
286+
# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
287+
ENV PYTHON_PIP_VERSION 21.0.1
288+
# https://github.com/pypa/get-pip
289+
ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/b60e2320d9e8d02348525bd74e871e466afdf77c/get-pip.py
290+
ENV PYTHON_GET_PIP_SHA256 c3b81e5d06371e135fb3156dc7d8fd6270735088428c4a9a5ec1f342e2024565
291+
292+
RUN set -ex; \
293+
\
294+
wget -O get-pip.py "$PYTHON_GET_PIP_URL"; \
295+
echo "$PYTHON_GET_PIP_SHA256 *get-pip.py" | sha256sum -c -; \
296+
\
297+
python get-pip.py \
298+
--disable-pip-version-check \
299+
--no-cache-dir \
300+
"pip==$PYTHON_PIP_VERSION" \
301+
; \
302+
pip --version; \
303+
\
304+
find /usr/local -depth \
305+
\( \
306+
\( -type d -a \( -name test -o -name tests -o -name idle_test \) \) \
307+
-o \
308+
\( -type f -a \( -name '*.pyc' -o -name '*.pyo' \) \) \
309+
\) -exec rm -rf '{}' +; \
310+
rm -f get-pip.py
311+
312+
CMD ["python3"]
313+
>>>>>>> ec67f96b61c55ba35acd6c553f21641c5bf0ccc5

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy