-
Notifications
You must be signed in to change notification settings - Fork 2.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update python #17543
Merged
Merged
Update python #17543
+40
−40
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Changes: - docker-library/python@31bbb37: Merge pull request docker-library/python#955 from edmorley/rm-get-pip - docker-library/python@9cd3243: Switch from get-pip.py to ensurepip
Diff for d163a57:diff --git a/_bashbrew-cat b/_bashbrew-cat
index f33dd27..f17269b 100644
--- a/_bashbrew-cat
+++ b/_bashbrew-cat
@@ -4,163 +4,163 @@ Builder: buildkit
Tags: 3.8.20-alpine3.19, 3.8-alpine3.19
Architectures: amd64, arm32v6, arm32v7, arm64v8, i386, ppc64le, s390x
-GitCommit: 36e52f14df57eeab9efd1d4716c06810a3b968a5
+GitCommit: 9cd324371ef929bfc5036a00d7705a213d8b5020
Directory: 3.8/alpine3.19
Tags: 3.8.20-alpine3.20, 3.8-alpine3.20, 3.8.20-alpine, 3.8-alpine
Architectures: amd64, arm32v6, arm32v7, arm64v8, i386, ppc64le, riscv64, s390x
-GitCommit: 36e52f14df57eeab9efd1d4716c06810a3b968a5
+GitCommit: 9cd324371ef929bfc5036a00d7705a213d8b5020
Directory: 3.8/alpine3.20
Tags: 3.8.20-bookworm, 3.8-bookworm
SharedTags: 3.8.20, 3.8
Architectures: amd64, arm32v5, arm32v7, arm64v8, i386, mips64le, ppc64le, s390x
-GitCommit: 36e52f14df57eeab9efd1d4716c06810a3b968a5
+GitCommit: 9cd324371ef929bfc5036a00d7705a213d8b5020
Directory: 3.8/bookworm
Tags: 3.8.20-bullseye, 3.8-bullseye
Architectures: amd64, arm32v5, arm32v7, arm64v8, i386, ppc64le, s390x
-GitCommit: 36e52f14df57eeab9efd1d4716c06810a3b968a5
+GitCommit: 9cd324371ef929bfc5036a00d7705a213d8b5020
Directory: 3.8/bullseye
Tags: 3.8.20-slim-bookworm, 3.8-slim-bookworm, 3.8.20-slim, 3.8-slim
Architectures: amd64, arm32v5, arm32v7, arm64v8, i386, mips64le, ppc64le, s390x
-GitCommit: 36e52f14df57eeab9efd1d4716c06810a3b968a5
+GitCommit: 9cd324371ef929bfc5036a00d7705a213d8b5020
Directory: 3.8/slim-bookworm
Tags: 3.8.20-slim-bullseye, 3.8-slim-bullseye
Architectures: amd64, arm32v5, arm32v7, arm64v8, i386, ppc64le, s390x
-GitCommit: 36e52f14df57eeab9efd1d4716c06810a3b968a5
+GitCommit: 9cd324371ef929bfc5036a00d7705a213d8b5020
Directory: 3.8/slim-bullseye
Tags: 3.9.20-alpine3.19, 3.9-alpine3.19
Architectures: amd64, arm32v6, arm32v7, arm64v8, i386, ppc64le, s390x
-GitCommit: b4ded1bb3966d489d8f98b829beb40c4eff8202d
+GitCommit: 9cd324371ef929bfc5036a00d7705a213d8b5020
Directory: 3.9/alpine3.19
Tags: 3.9.20-alpine3.20, 3.9-alpine3.20, 3.9.20-alpine, 3.9-alpine
Architectures: amd64, arm32v6, arm32v7, arm64v8, i386, ppc64le, riscv64, s390x
-GitCommit: b4ded1bb3966d489d8f98b829beb40c4eff8202d
+GitCommit: 9cd324371ef929bfc5036a00d7705a213d8b5020
Directory: 3.9/alpine3.20
Tags: 3.9.20-bookworm, 3.9-bookworm
SharedTags: 3.9.20, 3.9
Architectures: amd64, arm32v5, arm32v7, arm64v8, i386, mips64le, ppc64le, s390x
-GitCommit: b4ded1bb3966d489d8f98b829beb40c4eff8202d
+GitCommit: 9cd324371ef929bfc5036a00d7705a213d8b5020
Directory: 3.9/bookworm
Tags: 3.9.20-bullseye, 3.9-bullseye
Architectures: amd64, arm32v5, arm32v7, arm64v8, i386, ppc64le, s390x
-GitCommit: b4ded1bb3966d489d8f98b829beb40c4eff8202d
+GitCommit: 9cd324371ef929bfc5036a00d7705a213d8b5020
Directory: 3.9/bullseye
Tags: 3.9.20-slim-bookworm, 3.9-slim-bookworm, 3.9.20-slim, 3.9-slim
Architectures: amd64, arm32v5, arm32v7, arm64v8, i386, mips64le, ppc64le, s390x
-GitCommit: b4ded1bb3966d489d8f98b829beb40c4eff8202d
+GitCommit: 9cd324371ef929bfc5036a00d7705a213d8b5020
Directory: 3.9/slim-bookworm
Tags: 3.9.20-slim-bullseye, 3.9-slim-bullseye
Architectures: amd64, arm32v5, arm32v7, arm64v8, i386, ppc64le, s390x
-GitCommit: b4ded1bb3966d489d8f98b829beb40c4eff8202d
+GitCommit: 9cd324371ef929bfc5036a00d7705a213d8b5020
Directory: 3.9/slim-bullseye
Tags: 3.10.15-alpine3.19, 3.10-alpine3.19
Architectures: amd64, arm32v6, arm32v7, arm64v8, i386, ppc64le, s390x
-GitCommit: cecac62a2c89fe28e2aca31f4ccbf799292061e0
+GitCommit: 9cd324371ef929bfc5036a00d7705a213d8b5020
Directory: 3.10/alpine3.19
Tags: 3.10.15-alpine3.20, 3.10-alpine3.20, 3.10.15-alpine, 3.10-alpine
Architectures: amd64, arm32v6, arm32v7, arm64v8, i386, ppc64le, riscv64, s390x
-GitCommit: cecac62a2c89fe28e2aca31f4ccbf799292061e0
+GitCommit: 9cd324371ef929bfc5036a00d7705a213d8b5020
Directory: 3.10/alpine3.20
Tags: 3.10.15-bookworm, 3.10-bookworm
SharedTags: 3.10.15, 3.10
Architectures: amd64, arm32v5, arm32v7, arm64v8, i386, ppc64le, s390x
-GitCommit: cecac62a2c89fe28e2aca31f4ccbf799292061e0
+GitCommit: 9cd324371ef929bfc5036a00d7705a213d8b5020
Directory: 3.10/bookworm
Tags: 3.10.15-bullseye, 3.10-bullseye
Architectures: amd64, arm32v5, arm32v7, arm64v8, i386, ppc64le, s390x
-GitCommit: cecac62a2c89fe28e2aca31f4ccbf799292061e0
+GitCommit: 9cd324371ef929bfc5036a00d7705a213d8b5020
Directory: 3.10/bullseye
Tags: 3.10.15-slim-bookworm, 3.10-slim-bookworm, 3.10.15-slim, 3.10-slim
Architectures: amd64, arm32v5, arm32v7, arm64v8, i386, ppc64le, s390x
-GitCommit: cecac62a2c89fe28e2aca31f4ccbf799292061e0
+GitCommit: 9cd324371ef929bfc5036a00d7705a213d8b5020
Directory: 3.10/slim-bookworm
Tags: 3.10.15-slim-bullseye, 3.10-slim-bullseye
Architectures: amd64, arm32v5, arm32v7, arm64v8, i386, ppc64le, s390x
-GitCommit: cecac62a2c89fe28e2aca31f4ccbf799292061e0
+GitCommit: 9cd324371ef929bfc5036a00d7705a213d8b5020
Directory: 3.10/slim-bullseye
Tags: 3.11.10-alpine3.19, 3.11-alpine3.19
Architectures: amd64, arm32v6, arm32v7, arm64v8, i386, ppc64le, s390x
-GitCommit: 8d51c9a3687abd70a9699444a6a0a415514058df
+GitCommit: 9cd324371ef929bfc5036a00d7705a213d8b5020
Directory: 3.11/alpine3.19
Tags: 3.11.10-alpine3.20, 3.11-alpine3.20, 3.11.10-alpine, 3.11-alpine
Architectures: amd64, arm32v6, arm32v7, arm64v8, i386, ppc64le, s390x
-GitCommit: 8d51c9a3687abd70a9699444a6a0a415514058df
+GitCommit: 9cd324371ef929bfc5036a00d7705a213d8b5020
Directory: 3.11/alpine3.20
Tags: 3.11.10-bookworm, 3.11-bookworm
SharedTags: 3.11.10, 3.11
Architectures: amd64, arm32v5, arm32v7, arm64v8, i386, ppc64le, s390x
-GitCommit: 8d51c9a3687abd70a9699444a6a0a415514058df
+GitCommit: 9cd324371ef929bfc5036a00d7705a213d8b5020
Directory: 3.11/bookworm
Tags: 3.11.10-bullseye, 3.11-bullseye
Architectures: amd64, arm32v5, arm32v7, arm64v8, i386, ppc64le, s390x
-GitCommit: 8d51c9a3687abd70a9699444a6a0a415514058df
+GitCommit: 9cd324371ef929bfc5036a00d7705a213d8b5020
Directory: 3.11/bullseye
Tags: 3.11.10-slim-bookworm, 3.11-slim-bookworm, 3.11.10-slim, 3.11-slim
Architectures: amd64, arm32v5, arm32v7, arm64v8, i386, ppc64le, s390x
-GitCommit: 8d51c9a3687abd70a9699444a6a0a415514058df
+GitCommit: 9cd324371ef929bfc5036a00d7705a213d8b5020
Directory: 3.11/slim-bookworm
Tags: 3.11.10-slim-bullseye, 3.11-slim-bullseye
Architectures: amd64, arm32v5, arm32v7, arm64v8, i386, ppc64le, s390x
-GitCommit: 8d51c9a3687abd70a9699444a6a0a415514058df
+GitCommit: 9cd324371ef929bfc5036a00d7705a213d8b5020
Directory: 3.11/slim-bullseye
Tags: 3.12.6-alpine3.19, 3.12-alpine3.19, 3-alpine3.19, alpine3.19
Architectures: amd64, arm32v6, arm32v7, arm64v8, i386, ppc64le, s390x
-GitCommit: ceb2ec17e8c168a574d0430d394d0e05544693df
+GitCommit: 9cd324371ef929bfc5036a00d7705a213d8b5020
Directory: 3.12/alpine3.19
Tags: 3.12.6-alpine3.20, 3.12-alpine3.20, 3-alpine3.20, alpine3.20, 3.12.6-alpine, 3.12-alpine, 3-alpine, alpine
Architectures: amd64, arm32v6, arm32v7, arm64v8, i386, ppc64le, s390x
-GitCommit: ceb2ec17e8c168a574d0430d394d0e05544693df
+GitCommit: 9cd324371ef929bfc5036a00d7705a213d8b5020
Directory: 3.12/alpine3.20
Tags: 3.12.6-bookworm, 3.12-bookworm, 3-bookworm, bookworm
SharedTags: 3.12.6, 3.12, 3, latest
Architectures: amd64, arm32v5, arm32v7, arm64v8, i386, ppc64le, s390x
-GitCommit: ceb2ec17e8c168a574d0430d394d0e05544693df
+GitCommit: 9cd324371ef929bfc5036a00d7705a213d8b5020
Directory: 3.12/bookworm
Tags: 3.12.6-bullseye, 3.12-bullseye, 3-bullseye, bullseye
Architectures: amd64, arm32v5, arm32v7, arm64v8, i386, ppc64le, s390x
-GitCommit: ceb2ec17e8c168a574d0430d394d0e05544693df
+GitCommit: 9cd324371ef929bfc5036a00d7705a213d8b5020
Directory: 3.12/bullseye
Tags: 3.12.6-slim-bookworm, 3.12-slim-bookworm, 3-slim-bookworm, slim-bookworm, 3.12.6-slim, 3.12-slim, 3-slim, slim
Architectures: amd64, arm32v5, arm32v7, arm64v8, i386, ppc64le, s390x
-GitCommit: ceb2ec17e8c168a574d0430d394d0e05544693df
+GitCommit: 9cd324371ef929bfc5036a00d7705a213d8b5020
Directory: 3.12/slim-bookworm
Tags: 3.12.6-slim-bullseye, 3.12-slim-bullseye, 3-slim-bullseye, slim-bullseye
Architectures: amd64, arm32v5, arm32v7, arm64v8, i386, ppc64le, s390x
-GitCommit: ceb2ec17e8c168a574d0430d394d0e05544693df
+GitCommit: 9cd324371ef929bfc5036a00d7705a213d8b5020
Directory: 3.12/slim-bullseye
Tags: 3.12.6-windowsservercore-1809, 3.12-windowsservercore-1809, 3-windowsservercore-1809, windowsservercore-1809
SharedTags: 3.12.6-windowsservercore, 3.12-windowsservercore, 3-windowsservercore, windowsservercore, 3.12.6, 3.12, 3, latest
Architectures: windows-amd64
-GitCommit: ceb2ec17e8c168a574d0430d394d0e05544693df
+GitCommit: 9cd324371ef929bfc5036a00d7705a213d8b5020
Directory: 3.12/windows/windowsservercore-1809
Builder: classic
Constraints: windowsservercore-1809
@@ -168,46 +168,46 @@ Constraints: windowsservercore-1809
Tags: 3.12.6-windowsservercore-ltsc2022, 3.12-windowsservercore-ltsc2022, 3-windowsservercore-ltsc2022, windowsservercore-ltsc2022
SharedTags: 3.12.6-windowsservercore, 3.12-windowsservercore, 3-windowsservercore, windowsservercore, 3.12.6, 3.12, 3, latest
Architectures: windows-amd64
-GitCommit: ceb2ec17e8c168a574d0430d394d0e05544693df
+GitCommit: 9cd324371ef929bfc5036a00d7705a213d8b5020
Directory: 3.12/windows/windowsservercore-ltsc2022
Builder: classic
Constraints: windowsservercore-ltsc2022
Tags: 3.13.0rc2-alpine3.19, 3.13-rc-alpine3.19
Architectures: amd64, arm32v6, arm32v7, arm64v8, i386, ppc64le, s390x
-GitCommit: 551060c0ee78d7a73a8b46c6234954b5760d5c74
+GitCommit: 9cd324371ef929bfc5036a00d7705a213d8b5020
Directory: 3.13-rc/alpine3.19
Tags: 3.13.0rc2-alpine3.20, 3.13-rc-alpine3.20, 3.13.0rc2-alpine, 3.13-rc-alpine
Architectures: amd64, arm32v6, arm32v7, arm64v8, i386, ppc64le, s390x
-GitCommit: 551060c0ee78d7a73a8b46c6234954b5760d5c74
+GitCommit: 9cd324371ef929bfc5036a00d7705a213d8b5020
Directory: 3.13-rc/alpine3.20
Tags: 3.13.0rc2-bookworm, 3.13-rc-bookworm
SharedTags: 3.13.0rc2, 3.13-rc
Architectures: amd64, arm32v5, arm32v7, arm64v8, i386, ppc64le, s390x
-GitCommit: 551060c0ee78d7a73a8b46c6234954b5760d5c74
+GitCommit: 9cd324371ef929bfc5036a00d7705a213d8b5020
Directory: 3.13-rc/bookworm
Tags: 3.13.0rc2-bullseye, 3.13-rc-bullseye
Architectures: amd64, arm32v5, arm32v7, arm64v8, i386, ppc64le, s390x
-GitCommit: 551060c0ee78d7a73a8b46c6234954b5760d5c74
+GitCommit: 9cd324371ef929bfc5036a00d7705a213d8b5020
Directory: 3.13-rc/bullseye
Tags: 3.13.0rc2-slim-bookworm, 3.13-rc-slim-bookworm, 3.13.0rc2-slim, 3.13-rc-slim
Architectures: amd64, arm32v5, arm32v7, arm64v8, i386, ppc64le, s390x
-GitCommit: 551060c0ee78d7a73a8b46c6234954b5760d5c74
+GitCommit: 9cd324371ef929bfc5036a00d7705a213d8b5020
Directory: 3.13-rc/slim-bookworm
Tags: 3.13.0rc2-slim-bullseye, 3.13-rc-slim-bullseye
Architectures: amd64, arm32v5, arm32v7, arm64v8, i386, ppc64le, s390x
-GitCommit: 551060c0ee78d7a73a8b46c6234954b5760d5c74
+GitCommit: 9cd324371ef929bfc5036a00d7705a213d8b5020
Directory: 3.13-rc/slim-bullseye
Tags: 3.13.0rc2-windowsservercore-1809, 3.13-rc-windowsservercore-1809
SharedTags: 3.13.0rc2-windowsservercore, 3.13-rc-windowsservercore, 3.13.0rc2, 3.13-rc
Architectures: windows-amd64
-GitCommit: 551060c0ee78d7a73a8b46c6234954b5760d5c74
+GitCommit: 9cd324371ef929bfc5036a00d7705a213d8b5020
Directory: 3.13-rc/windows/windowsservercore-1809
Builder: classic
Constraints: windowsservercore-1809
@@ -215,7 +215,7 @@ Constraints: windowsservercore-1809
Tags: 3.13.0rc2-windowsservercore-ltsc2022, 3.13-rc-windowsservercore-ltsc2022
SharedTags: 3.13.0rc2-windowsservercore, 3.13-rc-windowsservercore, 3.13.0rc2, 3.13-rc
Architectures: windows-amd64
-GitCommit: 551060c0ee78d7a73a8b46c6234954b5760d5c74
+GitCommit: 9cd324371ef929bfc5036a00d7705a213d8b5020
Directory: 3.13-rc/windows/windowsservercore-ltsc2022
Builder: classic
Constraints: windowsservercore-ltsc2022
diff --git a/python_3.10-alpine/Dockerfile b/python_3.10-alpine/Dockerfile
index 8aac699..4627b12 100644
--- a/python_3.10-alpine/Dockerfile
+++ b/python_3.10-alpine/Dockerfile
@@ -78,7 +78,7 @@ RUN set -eux; \
--enable-shared \
--with-lto \
--with-system-expat \
- --without-ensurepip \
+ --with-ensurepip \
; \
nproc="$(nproc)"; \
# set thread stack size to 1MB so we don't segfault before we hit sys.getrecursionlimit()
@@ -119,43 +119,25 @@ RUN set -eux; \
; \
apk del --no-network .build-deps; \
\
- python3 --version
+ export PYTHONDONTWRITEBYTECODE=1; \
+ python3 --version; \
+ \
+ pip3 install \
+ --disable-pip-version-check \
+ --no-cache-dir \
+ --no-compile \
+ 'setuptools==65.5.1' \
+ wheel \
+ ; \
+ pip3 --version
# make some useful symlinks that are expected to exist ("/usr/local/bin/python" and friends)
RUN set -eux; \
- for src in idle3 pydoc3 python3 python3-config; do \
+ for src in idle3 pip3 pydoc3 python3 python3-config; do \
dst="$(echo "$src" | tr -d 3)"; \
[ -s "/usr/local/bin/$src" ]; \
[ ! -e "/usr/local/bin/$dst" ]; \
ln -svT "$src" "/usr/local/bin/$dst"; \
done
-# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
-ENV PYTHON_PIP_VERSION 23.0.1
-# https://github.com/docker-library/python/issues/365
-ENV PYTHON_SETUPTOOLS_VERSION 65.5.1
-# https://github.com/pypa/get-pip
-ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/def4aec84b261b939137dd1c69eff0aabb4a7bf4/public/get-pip.py
-ENV PYTHON_GET_PIP_SHA256 bc37786ec99618416cc0a0ca32833da447f4d91ab51d2c138dd15b7af21e8e9a
-
-RUN set -eux; \
- \
- wget -O get-pip.py "$PYTHON_GET_PIP_URL"; \
- echo "$PYTHON_GET_PIP_SHA256 *get-pip.py" | sha256sum -c -; \
- \
- export PYTHONDONTWRITEBYTECODE=1; \
- \
- python get-pip.py \
- --disable-pip-version-check \
- --no-cache-dir \
- --no-compile \
- "pip==$PYTHON_PIP_VERSION" \
- "setuptools==$PYTHON_SETUPTOOLS_VERSION" \
- # get-pip.py installs wheel by default, adding in case get-pip defaults change
- wheel \
- ; \
- rm -f get-pip.py; \
- \
- pip --version
-
CMD ["python3"]
diff --git a/python_3.10-alpine3.19/Dockerfile b/python_3.10-alpine3.19/Dockerfile
index c872e71..65a6b2d 100644
--- a/python_3.10-alpine3.19/Dockerfile
+++ b/python_3.10-alpine3.19/Dockerfile
@@ -78,7 +78,7 @@ RUN set -eux; \
--enable-shared \
--with-lto \
--with-system-expat \
- --without-ensurepip \
+ --with-ensurepip \
; \
nproc="$(nproc)"; \
# set thread stack size to 1MB so we don't segfault before we hit sys.getrecursionlimit()
@@ -119,43 +119,25 @@ RUN set -eux; \
; \
apk del --no-network .build-deps; \
\
- python3 --version
+ export PYTHONDONTWRITEBYTECODE=1; \
+ python3 --version; \
+ \
+ pip3 install \
+ --disable-pip-version-check \
+ --no-cache-dir \
+ --no-compile \
+ 'setuptools==65.5.1' \
+ wheel \
+ ; \
+ pip3 --version
# make some useful symlinks that are expected to exist ("/usr/local/bin/python" and friends)
RUN set -eux; \
- for src in idle3 pydoc3 python3 python3-config; do \
+ for src in idle3 pip3 pydoc3 python3 python3-config; do \
dst="$(echo "$src" | tr -d 3)"; \
[ -s "/usr/local/bin/$src" ]; \
[ ! -e "/usr/local/bin/$dst" ]; \
ln -svT "$src" "/usr/local/bin/$dst"; \
done
-# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
-ENV PYTHON_PIP_VERSION 23.0.1
-# https://github.com/docker-library/python/issues/365
-ENV PYTHON_SETUPTOOLS_VERSION 65.5.1
-# https://github.com/pypa/get-pip
-ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/def4aec84b261b939137dd1c69eff0aabb4a7bf4/public/get-pip.py
-ENV PYTHON_GET_PIP_SHA256 bc37786ec99618416cc0a0ca32833da447f4d91ab51d2c138dd15b7af21e8e9a
-
-RUN set -eux; \
- \
- wget -O get-pip.py "$PYTHON_GET_PIP_URL"; \
- echo "$PYTHON_GET_PIP_SHA256 *get-pip.py" | sha256sum -c -; \
- \
- export PYTHONDONTWRITEBYTECODE=1; \
- \
- python get-pip.py \
- --disable-pip-version-check \
- --no-cache-dir \
- --no-compile \
- "pip==$PYTHON_PIP_VERSION" \
- "setuptools==$PYTHON_SETUPTOOLS_VERSION" \
- # get-pip.py installs wheel by default, adding in case get-pip defaults change
- wheel \
- ; \
- rm -f get-pip.py; \
- \
- pip --version
-
CMD ["python3"]
diff --git a/python_3.10-bookworm/Dockerfile b/python_3.10-bookworm/Dockerfile
index 43142bb..9e9e317 100644
--- a/python_3.10-bookworm/Dockerfile
+++ b/python_3.10-bookworm/Dockerfile
@@ -50,7 +50,7 @@ RUN set -eux; \
--enable-shared \
--with-lto \
--with-system-expat \
- --without-ensurepip \
+ --with-ensurepip \
; \
nproc="$(nproc)"; \
EXTRA_CFLAGS="$(dpkg-buildflags --get CFLAGS)"; \
@@ -89,43 +89,25 @@ RUN set -eux; \
\
ldconfig; \
\
- python3 --version
+ export PYTHONDONTWRITEBYTECODE=1; \
+ python3 --version; \
+ \
+ pip3 install \
+ --disable-pip-version-check \
+ --no-cache-dir \
+ --no-compile \
+ 'setuptools==65.5.1' \
+ wheel \
+ ; \
+ pip3 --version
# make some useful symlinks that are expected to exist ("/usr/local/bin/python" and friends)
RUN set -eux; \
- for src in idle3 pydoc3 python3 python3-config; do \
+ for src in idle3 pip3 pydoc3 python3 python3-config; do \
dst="$(echo "$src" | tr -d 3)"; \
[ -s "/usr/local/bin/$src" ]; \
[ ! -e "/usr/local/bin/$dst" ]; \
ln -svT "$src" "/usr/local/bin/$dst"; \
done
-# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
-ENV PYTHON_PIP_VERSION 23.0.1
-# https://github.com/docker-library/python/issues/365
-ENV PYTHON_SETUPTOOLS_VERSION 65.5.1
-# https://github.com/pypa/get-pip
-ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/def4aec84b261b939137dd1c69eff0aabb4a7bf4/public/get-pip.py
-ENV PYTHON_GET_PIP_SHA256 bc37786ec99618416cc0a0ca32833da447f4d91ab51d2c138dd15b7af21e8e9a
-
-RUN set -eux; \
- \
- wget -O get-pip.py "$PYTHON_GET_PIP_URL"; \
- echo "$PYTHON_GET_PIP_SHA256 *get-pip.py" | sha256sum -c -; \
- \
- export PYTHONDONTWRITEBYTECODE=1; \
- \
- python get-pip.py \
- --disable-pip-version-check \
- --no-cache-dir \
- --no-compile \
- "pip==$PYTHON_PIP_VERSION" \
- "setuptools==$PYTHON_SETUPTOOLS_VERSION" \
- # get-pip.py installs wheel by default, adding in case get-pip defaults change
- wheel \
- ; \
- rm -f get-pip.py; \
- \
- pip --version
-
CMD ["python3"]
diff --git a/python_3.10-bullseye/Dockerfile b/python_3.10-bullseye/Dockerfile
index 019c674..98440f9 100644
--- a/python_3.10-bullseye/Dockerfile
+++ b/python_3.10-bullseye/Dockerfile
@@ -50,7 +50,7 @@ RUN set -eux; \
--enable-shared \
--with-lto \
--with-system-expat \
- --without-ensurepip \
+ --with-ensurepip \
; \
nproc="$(nproc)"; \
EXTRA_CFLAGS="$(dpkg-buildflags --get CFLAGS)"; \
@@ -89,43 +89,25 @@ RUN set -eux; \
\
ldconfig; \
\
- python3 --version
+ export PYTHONDONTWRITEBYTECODE=1; \
+ python3 --version; \
+ \
+ pip3 install \
+ --disable-pip-version-check \
+ --no-cache-dir \
+ --no-compile \
+ 'setuptools==65.5.1' \
+ wheel \
+ ; \
+ pip3 --version
# make some useful symlinks that are expected to exist ("/usr/local/bin/python" and friends)
RUN set -eux; \
- for src in idle3 pydoc3 python3 python3-config; do \
+ for src in idle3 pip3 pydoc3 python3 python3-config; do \
dst="$(echo "$src" | tr -d 3)"; \
[ -s "/usr/local/bin/$src" ]; \
[ ! -e "/usr/local/bin/$dst" ]; \
ln -svT "$src" "/usr/local/bin/$dst"; \
done
-# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
-ENV PYTHON_PIP_VERSION 23.0.1
-# https://github.com/docker-library/python/issues/365
-ENV PYTHON_SETUPTOOLS_VERSION 65.5.1
-# https://github.com/pypa/get-pip
-ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/def4aec84b261b939137dd1c69eff0aabb4a7bf4/public/get-pip.py
-ENV PYTHON_GET_PIP_SHA256 bc37786ec99618416cc0a0ca32833da447f4d91ab51d2c138dd15b7af21e8e9a
-
-RUN set -eux; \
- \
- wget -O get-pip.py "$PYTHON_GET_PIP_URL"; \
- echo "$PYTHON_GET_PIP_SHA256 *get-pip.py" | sha256sum -c -; \
- \
- export PYTHONDONTWRITEBYTECODE=1; \
- \
- python get-pip.py \
- --disable-pip-version-check \
- --no-cache-dir \
- --no-compile \
- "pip==$PYTHON_PIP_VERSION" \
- "setuptools==$PYTHON_SETUPTOOLS_VERSION" \
- # get-pip.py installs wheel by default, adding in case get-pip defaults change
- wheel \
- ; \
- rm -f get-pip.py; \
- \
- pip --version
-
CMD ["python3"]
diff --git a/python_3.10-slim-bullseye/Dockerfile b/python_3.10-slim-bullseye/Dockerfile
index 80b38c7..0732224 100644
--- a/python_3.10-slim-bullseye/Dockerfile
+++ b/python_3.10-slim-bullseye/Dockerfile
@@ -76,7 +76,7 @@ RUN set -eux; \
--enable-shared \
--with-lto \
--with-system-expat \
- --without-ensurepip \
+ --with-ensurepip \
; \
nproc="$(nproc)"; \
EXTRA_CFLAGS="$(dpkg-buildflags --get CFLAGS)"; \
@@ -123,52 +123,25 @@ RUN set -eux; \
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
rm -rf /var/lib/apt/lists/*; \
\
- python3 --version
+ export PYTHONDONTWRITEBYTECODE=1; \
+ python3 --version; \
+ \
+ pip3 install \
+ --disable-pip-version-check \
+ --no-cache-dir \
+ --no-compile \
+ 'setuptools==65.5.1' \
+ wheel \
+ ; \
+ pip3 --version
# make some useful symlinks that are expected to exist ("/usr/local/bin/python" and friends)
RUN set -eux; \
- for src in idle3 pydoc3 python3 python3-config; do \
+ for src in idle3 pip3 pydoc3 python3 python3-config; do \
dst="$(echo "$src" | tr -d 3)"; \
[ -s "/usr/local/bin/$src" ]; \
[ ! -e "/usr/local/bin/$dst" ]; \
ln -svT "$src" "/usr/local/bin/$dst"; \
done
-# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
-ENV PYTHON_PIP_VERSION 23.0.1
-# https://github.com/docker-library/python/issues/365
-ENV PYTHON_SETUPTOOLS_VERSION 65.5.1
-# https://github.com/pypa/get-pip
-ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/def4aec84b261b939137dd1c69eff0aabb4a7bf4/public/get-pip.py
-ENV PYTHON_GET_PIP_SHA256 bc37786ec99618416cc0a0ca32833da447f4d91ab51d2c138dd15b7af21e8e9a
-
-RUN set -eux; \
- \
- savedAptMark="$(apt-mark showmanual)"; \
- apt-get update; \
- apt-get install -y --no-install-recommends wget; \
- \
- wget -O get-pip.py "$PYTHON_GET_PIP_URL"; \
- echo "$PYTHON_GET_PIP_SHA256 *get-pip.py" | sha256sum -c -; \
- \
- apt-mark auto '.*' > /dev/null; \
- [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; \
- apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
- rm -rf /var/lib/apt/lists/*; \
- \
- export PYTHONDONTWRITEBYTECODE=1; \
- \
- python get-pip.py \
- --disable-pip-version-check \
- --no-cache-dir \
- --no-compile \
- "pip==$PYTHON_PIP_VERSION" \
- "setuptools==$PYTHON_SETUPTOOLS_VERSION" \
- # get-pip.py installs wheel by default, adding in case get-pip defaults change
- wheel \
- ; \
- rm -f get-pip.py; \
- \
- pip --version
-
CMD ["python3"]
diff --git a/python_3.10-slim/Dockerfile b/python_3.10-slim/Dockerfile
index b0368d6..e99add8 100644
--- a/python_3.10-slim/Dockerfile
+++ b/python_3.10-slim/Dockerfile
@@ -76,7 +76,7 @@ RUN set -eux; \
--enable-shared \
--with-lto \
--with-system-expat \
- --without-ensurepip \
+ --with-ensurepip \
; \
nproc="$(nproc)"; \
EXTRA_CFLAGS="$(dpkg-buildflags --get CFLAGS)"; \
@@ -123,52 +123,25 @@ RUN set -eux; \
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
rm -rf /var/lib/apt/lists/*; \
\
- python3 --version
+ export PYTHONDONTWRITEBYTECODE=1; \
+ python3 --version; \
+ \
+ pip3 install \
+ --disable-pip-version-check \
+ --no-cache-dir \
+ --no-compile \
+ 'setuptools==65.5.1' \
+ wheel \
+ ; \
+ pip3 --version
# make some useful symlinks that are expected to exist ("/usr/local/bin/python" and friends)
RUN set -eux; \
- for src in idle3 pydoc3 python3 python3-config; do \
+ for src in idle3 pip3 pydoc3 python3 python3-config; do \
dst="$(echo "$src" | tr -d 3)"; \
[ -s "/usr/local/bin/$src" ]; \
[ ! -e "/usr/local/bin/$dst" ]; \
ln -svT "$src" "/usr/local/bin/$dst"; \
done
-# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
-ENV PYTHON_PIP_VERSION 23.0.1
-# https://github.com/docker-library/python/issues/365
-ENV PYTHON_SETUPTOOLS_VERSION 65.5.1
-# https://github.com/pypa/get-pip
-ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/def4aec84b261b939137dd1c69eff0aabb4a7bf4/public/get-pip.py
-ENV PYTHON_GET_PIP_SHA256 bc37786ec99618416cc0a0ca32833da447f4d91ab51d2c138dd15b7af21e8e9a
-
-RUN set -eux; \
- \
- savedAptMark="$(apt-mark showmanual)"; \
- apt-get update; \
- apt-get install -y --no-install-recommends wget; \
- \
- wget -O get-pip.py "$PYTHON_GET_PIP_URL"; \
- echo "$PYTHON_GET_PIP_SHA256 *get-pip.py" | sha256sum -c -; \
- \
- apt-mark auto '.*' > /dev/null; \
- [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; \
- apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
- rm -rf /var/lib/apt/lists/*; \
- \
- export PYTHONDONTWRITEBYTECODE=1; \
- \
- python get-pip.py \
- --disable-pip-version-check \
- --no-cache-dir \
- --no-compile \
- "pip==$PYTHON_PIP_VERSION" \
- "setuptools==$PYTHON_SETUPTOOLS_VERSION" \
- # get-pip.py installs wheel by default, adding in case get-pip defaults change
- wheel \
- ; \
- rm -f get-pip.py; \
- \
- pip --version
-
CMD ["python3"]
diff --git a/python_3.11-alpine/Dockerfile b/python_3.11-alpine/Dockerfile
index ec82561..a945539 100644
--- a/python_3.11-alpine/Dockerfile
+++ b/python_3.11-alpine/Dockerfile
@@ -78,7 +78,7 @@ RUN set -eux; \
--enable-shared \
--with-lto \
--with-system-expat \
- --without-ensurepip \
+ --with-ensurepip \
; \
nproc="$(nproc)"; \
# set thread stack size to 1MB so we don't segfault before we hit sys.getrecursionlimit()
@@ -119,43 +119,25 @@ RUN set -eux; \
; \
apk del --no-network .build-deps; \
\
- python3 --version
+ export PYTHONDONTWRITEBYTECODE=1; \
+ python3 --version; \
+ \
+ pip3 install \
+ --disable-pip-version-check \
+ --no-cache-dir \
+ --no-compile \
+ 'setuptools==65.5.1' \
+ wheel \
+ ; \
+ pip3 --version
# make some useful symlinks that are expected to exist ("/usr/local/bin/python" and friends)
RUN set -eux; \
- for src in idle3 pydoc3 python3 python3-config; do \
+ for src in idle3 pip3 pydoc3 python3 python3-config; do \
dst="$(echo "$src" | tr -d 3)"; \
[ -s "/usr/local/bin/$src" ]; \
[ ! -e "/usr/local/bin/$dst" ]; \
ln -svT "$src" "/usr/local/bin/$dst"; \
done
-# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
-ENV PYTHON_PIP_VERSION 24.0
-# https://github.com/docker-library/python/issues/365
-ENV PYTHON_SETUPTOOLS_VERSION 65.5.1
-# https://github.com/pypa/get-pip
-ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/def4aec84b261b939137dd1c69eff0aabb4a7bf4/public/get-pip.py
-ENV PYTHON_GET_PIP_SHA256 bc37786ec99618416cc0a0ca32833da447f4d91ab51d2c138dd15b7af21e8e9a
-
-RUN set -eux; \
- \
- wget -O get-pip.py "$PYTHON_GET_PIP_URL"; \
- echo "$PYTHON_GET_PIP_SHA256 *get-pip.py" | sha256sum -c -; \
- \
- export PYTHONDONTWRITEBYTECODE=1; \
- \
- python get-pip.py \
- --disable-pip-version-check \
- --no-cache-dir \
- --no-compile \
- "pip==$PYTHON_PIP_VERSION" \
- "setuptools==$PYTHON_SETUPTOOLS_VERSION" \
- # get-pip.py installs wheel by default, adding in case get-pip defaults change
- wheel \
- ; \
- rm -f get-pip.py; \
- \
- pip --version
-
CMD ["python3"]
diff --git a/python_3.11-alpine3.19/Dockerfile b/python_3.11-alpine3.19/Dockerfile
index 080c3dd..3949141 100644
--- a/python_3.11-alpine3.19/Dockerfile
+++ b/python_3.11-alpine3.19/Dockerfile
@@ -78,7 +78,7 @@ RUN set -eux; \
--enable-shared \
--with-lto \
--with-system-expat \
- --without-ensurepip \
+ --with-ensurepip \
; \
nproc="$(nproc)"; \
# set thread stack size to 1MB so we don't segfault before we hit sys.getrecursionlimit()
@@ -119,43 +119,25 @@ RUN set -eux; \
; \
apk del --no-network .build-deps; \
\
- python3 --version
+ export PYTHONDONTWRITEBYTECODE=1; \
+ python3 --version; \
+ \
+ pip3 install \
+ --disable-pip-version-check \
+ --no-cache-dir \
+ --no-compile \
+ 'setuptools==65.5.1' \
+ wheel \
+ ; \
+ pip3 --version
# make some useful symlinks that are expected to exist ("/usr/local/bin/python" and friends)
RUN set -eux; \
- for src in idle3 pydoc3 python3 python3-config; do \
+ for src in idle3 pip3 pydoc3 python3 python3-config; do \
dst="$(echo "$src" | tr -d 3)"; \
[ -s "/usr/local/bin/$src" ]; \
[ ! -e "/usr/local/bin/$dst" ]; \
ln -svT "$src" "/usr/local/bin/$dst"; \
done
-# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
-ENV PYTHON_PIP_VERSION 24.0
-# https://github.com/docker-library/python/issues/365
-ENV PYTHON_SETUPTOOLS_VERSION 65.5.1
-# https://github.com/pypa/get-pip
-ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/def4aec84b261b939137dd1c69eff0aabb4a7bf4/public/get-pip.py
-ENV PYTHON_GET_PIP_SHA256 bc37786ec99618416cc0a0ca32833da447f4d91ab51d2c138dd15b7af21e8e9a
-
-RUN set -eux; \
- \
- wget -O get-pip.py "$PYTHON_GET_PIP_URL"; \
- echo "$PYTHON_GET_PIP_SHA256 *get-pip.py" | sha256sum -c -; \
- \
- export PYTHONDONTWRITEBYTECODE=1; \
- \
- python get-pip.py \
- --disable-pip-version-check \
- --no-cache-dir \
- --no-compile \
- "pip==$PYTHON_PIP_VERSION" \
- "setuptools==$PYTHON_SETUPTOOLS_VERSION" \
- # get-pip.py installs wheel by default, adding in case get-pip defaults change
- wheel \
- ; \
- rm -f get-pip.py; \
- \
- pip --version
-
CMD ["python3"]
diff --git a/python_3.11-bookworm/Dockerfile b/python_3.11-bookworm/Dockerfile
index a1bcdc2..93be03e 100644
--- a/python_3.11-bookworm/Dockerfile
+++ b/python_3.11-bookworm/Dockerfile
@@ -50,7 +50,7 @@ RUN set -eux; \
--enable-shared \
--with-lto \
--with-system-expat \
- --without-ensurepip \
+ --with-ensurepip \
; \
nproc="$(nproc)"; \
EXTRA_CFLAGS="$(dpkg-buildflags --get CFLAGS)"; \
@@ -89,43 +89,25 @@ RUN set -eux; \
\
ldconfig; \
\
- python3 --version
+ export PYTHONDONTWRITEBYTECODE=1; \
+ python3 --version; \
+ \
+ pip3 install \
+ --disable-pip-version-check \
+ --no-cache-dir \
+ --no-compile \
+ 'setuptools==65.5.1' \
+ wheel \
+ ; \
+ pip3 --version
# make some useful symlinks that are expected to exist ("/usr/local/bin/python" and friends)
RUN set -eux; \
- for src in idle3 pydoc3 python3 python3-config; do \
+ for src in idle3 pip3 pydoc3 python3 python3-config; do \
dst="$(echo "$src" | tr -d 3)"; \
[ -s "/usr/local/bin/$src" ]; \
[ ! -e "/usr/local/bin/$dst" ]; \
ln -svT "$src" "/usr/local/bin/$dst"; \
done
-# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
-ENV PYTHON_PIP_VERSION 24.0
-# https://github.com/docker-library/python/issues/365
-ENV PYTHON_SETUPTOOLS_VERSION 65.5.1
-# https://github.com/pypa/get-pip
-ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/def4aec84b261b939137dd1c69eff0aabb4a7bf4/public/get-pip.py
-ENV PYTHON_GET_PIP_SHA256 bc37786ec99618416cc0a0ca32833da447f4d91ab51d2c138dd15b7af21e8e9a
-
-RUN set -eux; \
- \
- wget -O get-pip.py "$PYTHON_GET_PIP_URL"; \
- echo "$PYTHON_GET_PIP_SHA256 *get-pip.py" | sha256sum -c -; \
- \
- export PYTHONDONTWRITEBYTECODE=1; \
- \
- python get-pip.py \
- --disable-pip-version-check \
- --no-cache-dir \
- --no-compile \
- "pip==$PYTHON_PIP_VERSION" \
- "setuptools==$PYTHON_SETUPTOOLS_VERSION" \
- # get-pip.py installs wheel by default, adding in case get-pip defaults change
- wheel \
- ; \
- rm -f get-pip.py; \
- \
- pip --version
-
CMD ["python3"]
diff --git a/python_3.11-bullseye/Dockerfile b/python_3.11-bullseye/Dockerfile
index 0dd17ac..c5a0a7a 100644
--- a/python_3.11-bullseye/Dockerfile
+++ b/python_3.11-bullseye/Dockerfile
@@ -50,7 +50,7 @@ RUN set -eux; \
--enable-shared \
--with-lto \
--with-system-expat \
- --without-ensurepip \
+ --with-ensurepip \
; \
nproc="$(nproc)"; \
EXTRA_CFLAGS="$(dpkg-buildflags --get CFLAGS)"; \
@@ -89,43 +89,25 @@ RUN set -eux; \
\
ldconfig; \
\
- python3 --version
+ export PYTHONDONTWRITEBYTECODE=1; \
+ python3 --version; \
+ \
+ pip3 install \
+ --disable-pip-version-check \
+ --no-cache-dir \
+ --no-compile \
+ 'setuptools==65.5.1' \
+ wheel \
+ ; \
+ pip3 --version
# make some useful symlinks that are expected to exist ("/usr/local/bin/python" and friends)
RUN set -eux; \
- for src in idle3 pydoc3 python3 python3-config; do \
+ for src in idle3 pip3 pydoc3 python3 python3-config; do \
dst="$(echo "$src" | tr -d 3)"; \
[ -s "/usr/local/bin/$src" ]; \
[ ! -e "/usr/local/bin/$dst" ]; \
ln -svT "$src" "/usr/local/bin/$dst"; \
done
-# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
-ENV PYTHON_PIP_VERSION 24.0
-# https://github.com/docker-library/python/issues/365
-ENV PYTHON_SETUPTOOLS_VERSION 65.5.1
-# https://github.com/pypa/get-pip
-ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/def4aec84b261b939137dd1c69eff0aabb4a7bf4/public/get-pip.py
-ENV PYTHON_GET_PIP_SHA256 bc37786ec99618416cc0a0ca32833da447f4d91ab51d2c138dd15b7af21e8e9a
-
-RUN set -eux; \
- \
- wget -O get-pip.py "$PYTHON_GET_PIP_URL"; \
- echo "$PYTHON_GET_PIP_SHA256 *get-pip.py" | sha256sum -c -; \
- \
- export PYTHONDONTWRITEBYTECODE=1; \
- \
- python get-pip.py \
- --disable-pip-version-check \
- --no-cache-dir \
- --no-compile \
- "pip==$PYTHON_PIP_VERSION" \
- "setuptools==$PYTHON_SETUPTOOLS_VERSION" \
- # get-pip.py installs wheel by default, adding in case get-pip defaults change
- wheel \
- ; \
- rm -f get-pip.py; \
- \
- pip --version
-
CMD ["python3"]
diff --git a/python_3.11-slim-bullseye/Dockerfile b/python_3.11-slim-bullseye/Dockerfile
index a4312a7..4a5fdd6 100644
--- a/python_3.11-slim-bullseye/Dockerfile
+++ b/python_3.11-slim-bullseye/Dockerfile
@@ -76,7 +76,7 @@ RUN set -eux; \
--enable-shared \
--with-lto \
--with-system-expat \
- --without-ensurepip \
+ --with-ensurepip \
; \
nproc="$(nproc)"; \
EXTRA_CFLAGS="$(dpkg-buildflags --get CFLAGS)"; \
@@ -123,52 +123,25 @@ RUN set -eux; \
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
rm -rf /var/lib/apt/lists/*; \
\
- python3 --version
+ export PYTHONDONTWRITEBYTECODE=1; \
+ python3 --version; \
+ \
+ pip3 install \
+ --disable-pip-version-check \
+ --no-cache-dir \
+ --no-compile \
+ 'setuptools==65.5.1' \
+ wheel \
+ ; \
+ pip3 --version
# make some useful symlinks that are expected to exist ("/usr/local/bin/python" and friends)
RUN set -eux; \
- for src in idle3 pydoc3 python3 python3-config; do \
+ for src in idle3 pip3 pydoc3 python3 python3-config; do \
dst="$(echo "$src" | tr -d 3)"; \
[ -s "/usr/local/bin/$src" ]; \
[ ! -e "/usr/local/bin/$dst" ]; \
ln -svT "$src" "/usr/local/bin/$dst"; \
done
-# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
-ENV PYTHON_PIP_VERSION 24.0
-# https://github.com/docker-library/python/issues/365
-ENV PYTHON_SETUPTOOLS_VERSION 65.5.1
-# https://github.com/pypa/get-pip
-ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/def4aec84b261b939137dd1c69eff0aabb4a7bf4/public/get-pip.py
-ENV PYTHON_GET_PIP_SHA256 bc37786ec99618416cc0a0ca32833da447f4d91ab51d2c138dd15b7af21e8e9a
-
-RUN set -eux; \
- \
- savedAptMark="$(apt-mark showmanual)"; \
- apt-get update; \
- apt-get install -y --no-install-recommends wget; \
- \
- wget -O get-pip.py "$PYTHON_GET_PIP_URL"; \
- echo "$PYTHON_GET_PIP_SHA256 *get-pip.py" | sha256sum -c -; \
- \
- apt-mark auto '.*' > /dev/null; \
- [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; \
- apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
- rm -rf /var/lib/apt/lists/*; \
- \
- export PYTHONDONTWRITEBYTECODE=1; \
- \
- python get-pip.py \
- --disable-pip-version-check \
- --no-cache-dir \
- --no-compile \
- "pip==$PYTHON_PIP_VERSION" \
- "setuptools==$PYTHON_SETUPTOOLS_VERSION" \
- # get-pip.py installs wheel by default, adding in case get-pip defaults change
- wheel \
- ; \
- rm -f get-pip.py; \
- \
- pip --version
-
CMD ["python3"]
diff --git a/python_3.11-slim/Dockerfile b/python_3.11-slim/Dockerfile
index 591c54d..f435e98 100644
--- a/python_3.11-slim/Dockerfile
+++ b/python_3.11-slim/Dockerfile
@@ -76,7 +76,7 @@ RUN set -eux; \
--enable-shared \
--with-lto \
--with-system-expat \
- --without-ensurepip \
+ --with-ensurepip \
; \
nproc="$(nproc)"; \
EXTRA_CFLAGS="$(dpkg-buildflags --get CFLAGS)"; \
@@ -123,52 +123,25 @@ RUN set -eux; \
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
rm -rf /var/lib/apt/lists/*; \
\
- python3 --version
+ export PYTHONDONTWRITEBYTECODE=1; \
+ python3 --version; \
+ \
+ pip3 install \
+ --disable-pip-version-check \
+ --no-cache-dir \
+ --no-compile \
+ 'setuptools==65.5.1' \
+ wheel \
+ ; \
+ pip3 --version
# make some useful symlinks that are expected to exist ("/usr/local/bin/python" and friends)
RUN set -eux; \
- for src in idle3 pydoc3 python3 python3-config; do \
+ for src in idle3 pip3 pydoc3 python3 python3-config; do \
dst="$(echo "$src" | tr -d 3)"; \
[ -s "/usr/local/bin/$src" ]; \
[ ! -e "/usr/local/bin/$dst" ]; \
ln -svT "$src" "/usr/local/bin/$dst"; \
done
-# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
-ENV PYTHON_PIP_VERSION 24.0
-# https://github.com/docker-library/python/issues/365
-ENV PYTHON_SETUPTOOLS_VERSION 65.5.1
-# https://github.com/pypa/get-pip
-ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/def4aec84b261b939137dd1c69eff0aabb4a7bf4/public/get-pip.py
-ENV PYTHON_GET_PIP_SHA256 bc37786ec99618416cc0a0ca32833da447f4d91ab51d2c138dd15b7af21e8e9a
-
-RUN set -eux; \
- \
- savedAptMark="$(apt-mark showmanual)"; \
- apt-get update; \
- apt-get install -y --no-install-recommends wget; \
- \
- wget -O get-pip.py "$PYTHON_GET_PIP_URL"; \
- echo "$PYTHON_GET_PIP_SHA256 *get-pip.py" | sha256sum -c -; \
- \
- apt-mark auto '.*' > /dev/null; \
- [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; \
- apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
- rm -rf /var/lib/apt/lists/*; \
- \
- export PYTHONDONTWRITEBYTECODE=1; \
- \
- python get-pip.py \
- --disable-pip-version-check \
- --no-cache-dir \
- --no-compile \
- "pip==$PYTHON_PIP_VERSION" \
- "setuptools==$PYTHON_SETUPTOOLS_VERSION" \
- # get-pip.py installs wheel by default, adding in case get-pip defaults change
- wheel \
- ; \
- rm -f get-pip.py; \
- \
- pip --version
-
CMD ["python3"]
diff --git a/python_3.13-rc-alpine/Dockerfile b/python_3.13-rc-alpine/Dockerfile
index aa3e5ee..7832c83 100644
--- a/python_3.13-rc-alpine/Dockerfile
+++ b/python_3.13-rc-alpine/Dockerfile
@@ -73,7 +73,7 @@ RUN set -eux; \
--enable-shared \
--with-lto \
--with-system-expat \
- --without-ensurepip \
+ --with-ensurepip \
; \
nproc="$(nproc)"; \
# set thread stack size to 1MB so we don't segfault before we hit sys.getrecursionlimit()
@@ -114,40 +114,17 @@ RUN set -eux; \
; \
apk del --no-network .build-deps; \
\
- python3 --version
+ export PYTHONDONTWRITEBYTECODE=1; \
+ python3 --version; \
+ pip3 --version
# make some useful symlinks that are expected to exist ("/usr/local/bin/python" and friends)
RUN set -eux; \
- for src in idle3 pydoc3 python3 python3-config; do \
+ for src in idle3 pip3 pydoc3 python3 python3-config; do \
dst="$(echo "$src" | tr -d 3)"; \
[ -s "/usr/local/bin/$src" ]; \
[ ! -e "/usr/local/bin/$dst" ]; \
ln -svT "$src" "/usr/local/bin/$dst"; \
done
-# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
-ENV PYTHON_PIP_VERSION 24.2
-# https://github.com/pypa/get-pip
-ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/def4aec84b261b939137dd1c69eff0aabb4a7bf4/public/get-pip.py
-ENV PYTHON_GET_PIP_SHA256 bc37786ec99618416cc0a0ca32833da447f4d91ab51d2c138dd15b7af21e8e9a
-
-RUN set -eux; \
- \
- wget -O get-pip.py "$PYTHON_GET_PIP_URL"; \
- echo "$PYTHON_GET_PIP_SHA256 *get-pip.py" | sha256sum -c -; \
- \
- export PYTHONDONTWRITEBYTECODE=1; \
- \
- python get-pip.py \
- --disable-pip-version-check \
- --no-cache-dir \
- --no-compile \
- "pip==$PYTHON_PIP_VERSION" \
- --no-setuptools \
- --no-wheel \
- ; \
- rm -f get-pip.py; \
- \
- pip --version
-
CMD ["python3"]
diff --git a/python_3.13-rc-alpine3.19/Dockerfile b/python_3.13-rc-alpine3.19/Dockerfile
index c719db6..194db7a 100644
--- a/python_3.13-rc-alpine3.19/Dockerfile
+++ b/python_3.13-rc-alpine3.19/Dockerfile
@@ -73,7 +73,7 @@ RUN set -eux; \
--enable-shared \
--with-lto \
--with-system-expat \
- --without-ensurepip \
+ --with-ensurepip \
; \
nproc="$(nproc)"; \
# set thread stack size to 1MB so we don't segfault before we hit sys.getrecursionlimit()
@@ -114,40 +114,17 @@ RUN set -eux; \
; \
apk del --no-network .build-deps; \
\
- python3 --version
+ export PYTHONDONTWRITEBYTECODE=1; \
+ python3 --version; \
+ pip3 --version
# make some useful symlinks that are expected to exist ("/usr/local/bin/python" and friends)
RUN set -eux; \
- for src in idle3 pydoc3 python3 python3-config; do \
+ for src in idle3 pip3 pydoc3 python3 python3-config; do \
dst="$(echo "$src" | tr -d 3)"; \
[ -s "/usr/local/bin/$src" ]; \
[ ! -e "/usr/local/bin/$dst" ]; \
ln -svT "$src" "/usr/local/bin/$dst"; \
done
-# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
-ENV PYTHON_PIP_VERSION 24.2
-# https://github.com/pypa/get-pip
-ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/def4aec84b261b939137dd1c69eff0aabb4a7bf4/public/get-pip.py
-ENV PYTHON_GET_PIP_SHA256 bc37786ec99618416cc0a0ca32833da447f4d91ab51d2c138dd15b7af21e8e9a
-
-RUN set -eux; \
- \
- wget -O get-pip.py "$PYTHON_GET_PIP_URL"; \
- echo "$PYTHON_GET_PIP_SHA256 *get-pip.py" | sha256sum -c -; \
- \
- export PYTHONDONTWRITEBYTECODE=1; \
- \
- python get-pip.py \
- --disable-pip-version-check \
- --no-cache-dir \
- --no-compile \
- "pip==$PYTHON_PIP_VERSION" \
- --no-setuptools \
- --no-wheel \
- ; \
- rm -f get-pip.py; \
- \
- pip --version
-
CMD ["python3"]
diff --git a/python_3.13-rc-bookworm/Dockerfile b/python_3.13-rc-bookworm/Dockerfile
index 33fc106..c352394 100644
--- a/python_3.13-rc-bookworm/Dockerfile
+++ b/python_3.13-rc-bookworm/Dockerfile
@@ -45,7 +45,7 @@ RUN set -eux; \
--enable-shared \
--with-lto \
--with-system-expat \
- --without-ensurepip \
+ --with-ensurepip \
; \
nproc="$(nproc)"; \
EXTRA_CFLAGS="$(dpkg-buildflags --get CFLAGS)"; \
@@ -84,40 +84,17 @@ RUN set -eux; \
\
ldconfig; \
\
- python3 --version
+ export PYTHONDONTWRITEBYTECODE=1; \
+ python3 --version; \
+ pip3 --version
# make some useful symlinks that are expected to exist ("/usr/local/bin/python" and friends)
RUN set -eux; \
- for src in idle3 pydoc3 python3 python3-config; do \
+ for src in idle3 pip3 pydoc3 python3 python3-config; do \
dst="$(echo "$src" | tr -d 3)"; \
[ -s "/usr/local/bin/$src" ]; \
[ ! -e "/usr/local/bin/$dst" ]; \
ln -svT "$src" "/usr/local/bin/$dst"; \
done
-# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
-ENV PYTHON_PIP_VERSION 24.2
-# https://github.com/pypa/get-pip
-ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/def4aec84b261b939137dd1c69eff0aabb4a7bf4/public/get-pip.py
-ENV PYTHON_GET_PIP_SHA256 bc37786ec99618416cc0a0ca32833da447f4d91ab51d2c138dd15b7af21e8e9a
-
-RUN set -eux; \
- \
- wget -O get-pip.py "$PYTHON_GET_PIP_URL"; \
- echo "$PYTHON_GET_PIP_SHA256 *get-pip.py" | sha256sum -c -; \
- \
- export PYTHONDONTWRITEBYTECODE=1; \
- \
- python get-pip.py \
- --disable-pip-version-check \
- --no-cache-dir \
- --no-compile \
- "pip==$PYTHON_PIP_VERSION" \
- --no-setuptools \
- --no-wheel \
- ; \
- rm -f get-pip.py; \
- \
- pip --version
-
CMD ["python3"]
diff --git a/python_3.13-rc-bullseye/Dockerfile b/python_3.13-rc-bullseye/Dockerfile
index 344cef5..dd469dc 100644
--- a/python_3.13-rc-bullseye/Dockerfile
+++ b/python_3.13-rc-bullseye/Dockerfile
@@ -45,7 +45,7 @@ RUN set -eux; \
--enable-shared \
--with-lto \
--with-system-expat \
- --without-ensurepip \
+ --with-ensurepip \
; \
nproc="$(nproc)"; \
EXTRA_CFLAGS="$(dpkg-buildflags --get CFLAGS)"; \
@@ -84,40 +84,17 @@ RUN set -eux; \
\
ldconfig; \
\
- python3 --version
+ export PYTHONDONTWRITEBYTECODE=1; \
+ python3 --version; \
+ pip3 --version
# make some useful symlinks that are expected to exist ("/usr/local/bin/python" and friends)
RUN set -eux; \
- for src in idle3 pydoc3 python3 python3-config; do \
+ for src in idle3 pip3 pydoc3 python3 python3-config; do \
dst="$(echo "$src" | tr -d 3)"; \
[ -s "/usr/local/bin/$src" ]; \
[ ! -e "/usr/local/bin/$dst" ]; \
ln -svT "$src" "/usr/local/bin/$dst"; \
done
-# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
-ENV PYTHON_PIP_VERSION 24.2
-# https://github.com/pypa/get-pip
-ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/def4aec84b261b939137dd1c69eff0aabb4a7bf4/public/get-pip.py
-ENV PYTHON_GET_PIP_SHA256 bc37786ec99618416cc0a0ca32833da447f4d91ab51d2c138dd15b7af21e8e9a
-
-RUN set -eux; \
- \
- wget -O get-pip.py "$PYTHON_GET_PIP_URL"; \
- echo "$PYTHON_GET_PIP_SHA256 *get-pip.py" | sha256sum -c -; \
- \
- export PYTHONDONTWRITEBYTECODE=1; \
- \
- python get-pip.py \
- --disable-pip-version-check \
- --no-cache-dir \
- --no-compile \
- "pip==$PYTHON_PIP_VERSION" \
- --no-setuptools \
- --no-wheel \
- ; \
- rm -f get-pip.py; \
- \
- pip --version
-
CMD ["python3"]
diff --git a/python_3.13-rc-slim-bullseye/Dockerfile b/python_3.13-rc-slim-bullseye/Dockerfile
index 23065ca..741cd82 100644
--- a/python_3.13-rc-slim-bullseye/Dockerfile
+++ b/python_3.13-rc-slim-bullseye/Dockerfile
@@ -71,7 +71,7 @@ RUN set -eux; \
--enable-shared \
--with-lto \
--with-system-expat \
- --without-ensurepip \
+ --with-ensurepip \
; \
nproc="$(nproc)"; \
EXTRA_CFLAGS="$(dpkg-buildflags --get CFLAGS)"; \
@@ -118,49 +118,17 @@ RUN set -eux; \
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
rm -rf /var/lib/apt/lists/*; \
\
- python3 --version
+ export PYTHONDONTWRITEBYTECODE=1; \
+ python3 --version; \
+ pip3 --version
# make some useful symlinks that are expected to exist ("/usr/local/bin/python" and friends)
RUN set -eux; \
- for src in idle3 pydoc3 python3 python3-config; do \
+ for src in idle3 pip3 pydoc3 python3 python3-config; do \
dst="$(echo "$src" | tr -d 3)"; \
[ -s "/usr/local/bin/$src" ]; \
[ ! -e "/usr/local/bin/$dst" ]; \
ln -svT "$src" "/usr/local/bin/$dst"; \
done
-# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
-ENV PYTHON_PIP_VERSION 24.2
-# https://github.com/pypa/get-pip
-ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/def4aec84b261b939137dd1c69eff0aabb4a7bf4/public/get-pip.py
-ENV PYTHON_GET_PIP_SHA256 bc37786ec99618416cc0a0ca32833da447f4d91ab51d2c138dd15b7af21e8e9a
-
-RUN set -eux; \
- \
- savedAptMark="$(apt-mark showmanual)"; \
- apt-get update; \
- apt-get install -y --no-install-recommends wget; \
- \
- wget -O get-pip.py "$PYTHON_GET_PIP_URL"; \
- echo "$PYTHON_GET_PIP_SHA256 *get-pip.py" | sha256sum -c -; \
- \
- apt-mark auto '.*' > /dev/null; \
- [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; \
- apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
- rm -rf /var/lib/apt/lists/*; \
- \
- export PYTHONDONTWRITEBYTECODE=1; \
- \
- python get-pip.py \
- --disable-pip-version-check \
- --no-cache-dir \
- --no-compile \
- "pip==$PYTHON_PIP_VERSION" \
- --no-setuptools \
- --no-wheel \
- ; \
- rm -f get-pip.py; \
- \
- pip --version
-
CMD ["python3"]
diff --git a/python_3.13-rc-slim/Dockerfile b/python_3.13-rc-slim/Dockerfile
index 300a074..e5e3074 100644
--- a/python_3.13-rc-slim/Dockerfile
+++ b/python_3.13-rc-slim/Dockerfile
@@ -71,7 +71,7 @@ RUN set -eux; \
--enable-shared \
--with-lto \
--with-system-expat \
- --without-ensurepip \
+ --with-ensurepip \
; \
nproc="$(nproc)"; \
EXTRA_CFLAGS="$(dpkg-buildflags --get CFLAGS)"; \
@@ -118,49 +118,17 @@ RUN set -eux; \
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
rm -rf /var/lib/apt/lists/*; \
\
- python3 --version
+ export PYTHONDONTWRITEBYTECODE=1; \
+ python3 --version; \
+ pip3 --version
# make some useful symlinks that are expected to exist ("/usr/local/bin/python" and friends)
RUN set -eux; \
- for src in idle3 pydoc3 python3 python3-config; do \
+ for src in idle3 pip3 pydoc3 python3 python3-config; do \
dst="$(echo "$src" | tr -d 3)"; \
[ -s "/usr/local/bin/$src" ]; \
[ ! -e "/usr/local/bin/$dst" ]; \
ln -svT "$src" "/usr/local/bin/$dst"; \
done
-# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
-ENV PYTHON_PIP_VERSION 24.2
-# https://github.com/pypa/get-pip
-ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/def4aec84b261b939137dd1c69eff0aabb4a7bf4/public/get-pip.py
-ENV PYTHON_GET_PIP_SHA256 bc37786ec99618416cc0a0ca32833da447f4d91ab51d2c138dd15b7af21e8e9a
-
-RUN set -eux; \
- \
- savedAptMark="$(apt-mark showmanual)"; \
- apt-get update; \
- apt-get install -y --no-install-recommends wget; \
- \
- wget -O get-pip.py "$PYTHON_GET_PIP_URL"; \
- echo "$PYTHON_GET_PIP_SHA256 *get-pip.py" | sha256sum -c -; \
- \
- apt-mark auto '.*' > /dev/null; \
- [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; \
- apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
- rm -rf /var/lib/apt/lists/*; \
- \
- export PYTHONDONTWRITEBYTECODE=1; \
- \
- python get-pip.py \
- --disable-pip-version-check \
- --no-cache-dir \
- --no-compile \
- "pip==$PYTHON_PIP_VERSION" \
- --no-setuptools \
- --no-wheel \
- ; \
- rm -f get-pip.py; \
- \
- pip --version
-
CMD ["python3"]
diff --git a/python_3.13-rc-windowsservercore-1809/Dockerfile b/python_3.13-rc-windowsservercore-1809/Dockerfile
index a943bac..00ac9a0 100644
--- a/python_3.13-rc-windowsservercore-1809/Dockerfile
+++ b/python_3.13-rc-windowsservercore-1809/Dockerfile
@@ -28,7 +28,7 @@ RUN $url = ('https://www.python.org/ftp/python/{0}/python-{1}-amd64.exe' -f ($en
'PrependPath=1', \
'Shortcuts=0', \
'Include_doc=0', \
- 'Include_pip=0', \
+ 'Include_pip=1', \
'Include_test=0' \
) \
).ExitCode; \
@@ -48,36 +48,8 @@ RUN $url = ('https://www.python.org/ftp/python/{0}/python-{1}-amd64.exe' -f ($en
Remove-Item python.exe -Force; \
Remove-Item $env:TEMP/Python*.log -Force; \
\
- Write-Host 'Complete.'
-
-# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
-ENV PYTHON_PIP_VERSION 24.2
-# https://github.com/pypa/get-pip
-ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/def4aec84b261b939137dd1c69eff0aabb4a7bf4/public/get-pip.py
-ENV PYTHON_GET_PIP_SHA256 bc37786ec99618416cc0a0ca32833da447f4d91ab51d2c138dd15b7af21e8e9a
-
-RUN Write-Host ('Downloading get-pip.py ({0}) ...' -f $env:PYTHON_GET_PIP_URL); \
- [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
- Invoke-WebRequest -Uri $env:PYTHON_GET_PIP_URL -OutFile 'get-pip.py'; \
- Write-Host ('Verifying sha256 ({0}) ...' -f $env:PYTHON_GET_PIP_SHA256); \
- if ((Get-FileHash 'get-pip.py' -Algorithm sha256).Hash -ne $env:PYTHON_GET_PIP_SHA256) { \
- Write-Host 'FAILED!'; \
- exit 1; \
- }; \
- \
$env:PYTHONDONTWRITEBYTECODE = '1'; \
\
- Write-Host ('Installing pip=={0} ...' -f $env:PYTHON_PIP_VERSION); \
- python get-pip.py \
- --disable-pip-version-check \
- --no-cache-dir \
- --no-compile \
- ('pip=={0}' -f $env:PYTHON_PIP_VERSION) \
- --no-setuptools \
- --no-wheel \
- ; \
- Remove-Item get-pip.py -Force; \
- \
Write-Host 'Verifying pip install ...'; \
pip --version; \
\
diff --git a/python_3.13-rc-windowsservercore-ltsc2022/Dockerfile b/python_3.13-rc-windowsservercore-ltsc2022/Dockerfile
index 550c0eb..a8e3533 100644
--- a/python_3.13-rc-windowsservercore-ltsc2022/Dockerfile
+++ b/python_3.13-rc-windowsservercore-ltsc2022/Dockerfile
@@ -28,7 +28,7 @@ RUN $url = ('https://www.python.org/ftp/python/{0}/python-{1}-amd64.exe' -f ($en
'PrependPath=1', \
'Shortcuts=0', \
'Include_doc=0', \
- 'Include_pip=0', \
+ 'Include_pip=1', \
'Include_test=0' \
) \
).ExitCode; \
@@ -48,36 +48,8 @@ RUN $url = ('https://www.python.org/ftp/python/{0}/python-{1}-amd64.exe' -f ($en
Remove-Item python.exe -Force; \
Remove-Item $env:TEMP/Python*.log -Force; \
\
- Write-Host 'Complete.'
-
-# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
-ENV PYTHON_PIP_VERSION 24.2
-# https://github.com/pypa/get-pip
-ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/def4aec84b261b939137dd1c69eff0aabb4a7bf4/public/get-pip.py
-ENV PYTHON_GET_PIP_SHA256 bc37786ec99618416cc0a0ca32833da447f4d91ab51d2c138dd15b7af21e8e9a
-
-RUN Write-Host ('Downloading get-pip.py ({0}) ...' -f $env:PYTHON_GET_PIP_URL); \
- [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
- Invoke-WebRequest -Uri $env:PYTHON_GET_PIP_URL -OutFile 'get-pip.py'; \
- Write-Host ('Verifying sha256 ({0}) ...' -f $env:PYTHON_GET_PIP_SHA256); \
- if ((Get-FileHash 'get-pip.py' -Algorithm sha256).Hash -ne $env:PYTHON_GET_PIP_SHA256) { \
- Write-Host 'FAILED!'; \
- exit 1; \
- }; \
- \
$env:PYTHONDONTWRITEBYTECODE = '1'; \
\
- Write-Host ('Installing pip=={0} ...' -f $env:PYTHON_PIP_VERSION); \
- python get-pip.py \
- --disable-pip-version-check \
- --no-cache-dir \
- --no-compile \
- ('pip=={0}' -f $env:PYTHON_PIP_VERSION) \
- --no-setuptools \
- --no-wheel \
- ; \
- Remove-Item get-pip.py -Force; \
- \
Write-Host 'Verifying pip install ...'; \
pip --version; \
\
diff --git a/python_3.8-alpine/Dockerfile b/python_3.8-alpine/Dockerfile
index 688b632..7061926 100644
--- a/python_3.8-alpine/Dockerfile
+++ b/python_3.8-alpine/Dockerfile
@@ -77,7 +77,7 @@ RUN set -eux; \
--enable-option-checking=fatal \
--enable-shared \
--with-system-expat \
- --without-ensurepip \
+ --with-ensurepip \
; \
nproc="$(nproc)"; \
# set thread stack size to 1MB so we don't segfault before we hit sys.getrecursionlimit()
@@ -119,43 +119,25 @@ RUN set -eux; \
; \
apk del --no-network .build-deps; \
\
- python3 --version
+ export PYTHONDONTWRITEBYTECODE=1; \
+ python3 --version; \
+ \
+ pip3 install \
+ --disable-pip-version-check \
+ --no-cache-dir \
+ --no-compile \
+ 'setuptools==57.5.0' \
+ wheel \
+ ; \
+ pip3 --version
# make some useful symlinks that are expected to exist ("/usr/local/bin/python" and friends)
RUN set -eux; \
- for src in idle3 pydoc3 python3 python3-config; do \
+ for src in idle3 pip3 pydoc3 python3 python3-config; do \
dst="$(echo "$src" | tr -d 3)"; \
[ -s "/usr/local/bin/$src" ]; \
[ ! -e "/usr/local/bin/$dst" ]; \
ln -svT "$src" "/usr/local/bin/$dst"; \
done
-# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
-ENV PYTHON_PIP_VERSION 23.0.1
-# https://github.com/docker-library/python/issues/365
-ENV PYTHON_SETUPTOOLS_VERSION 57.5.0
-# https://github.com/pypa/get-pip
-ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/def4aec84b261b939137dd1c69eff0aabb4a7bf4/public/get-pip.py
-ENV PYTHON_GET_PIP_SHA256 bc37786ec99618416cc0a0ca32833da447f4d91ab51d2c138dd15b7af21e8e9a
-
-RUN set -eux; \
- \
- wget -O get-pip.py "$PYTHON_GET_PIP_URL"; \
- echo "$PYTHON_GET_PIP_SHA256 *get-pip.py" | sha256sum -c -; \
- \
- export PYTHONDONTWRITEBYTECODE=1; \
- \
- python get-pip.py \
- --disable-pip-version-check \
- --no-cache-dir \
- --no-compile \
- "pip==$PYTHON_PIP_VERSION" \
- "setuptools==$PYTHON_SETUPTOOLS_VERSION" \
- # get-pip.py installs wheel by default, adding in case get-pip defaults change
- wheel \
- ; \
- rm -f get-pip.py; \
- \
- pip --version
-
CMD ["python3"]
diff --git a/python_3.8-alpine3.19/Dockerfile b/python_3.8-alpine3.19/Dockerfile
index 63dc987..b7371cc 100644
--- a/python_3.8-alpine3.19/Dockerfile
+++ b/python_3.8-alpine3.19/Dockerfile
@@ -77,7 +77,7 @@ RUN set -eux; \
--enable-option-checking=fatal \
--enable-shared \
--with-system-expat \
- --without-ensurepip \
+ --with-ensurepip \
; \
nproc="$(nproc)"; \
# set thread stack size to 1MB so we don't segfault before we hit sys.getrecursionlimit()
@@ -119,43 +119,25 @@ RUN set -eux; \
; \
apk del --no-network .build-deps; \
\
- python3 --version
+ export PYTHONDONTWRITEBYTECODE=1; \
+ python3 --version; \
+ \
+ pip3 install \
+ --disable-pip-version-check \
+ --no-cache-dir \
+ --no-compile \
+ 'setuptools==57.5.0' \
+ wheel \
+ ; \
+ pip3 --version
# make some useful symlinks that are expected to exist ("/usr/local/bin/python" and friends)
RUN set -eux; \
- for src in idle3 pydoc3 python3 python3-config; do \
+ for src in idle3 pip3 pydoc3 python3 python3-config; do \
dst="$(echo "$src" | tr -d 3)"; \
[ -s "/usr/local/bin/$src" ]; \
[ ! -e "/usr/local/bin/$dst" ]; \
ln -svT "$src" "/usr/local/bin/$dst"; \
done
-# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
-ENV PYTHON_PIP_VERSION 23.0.1
-# https://github.com/docker-library/python/issues/365
-ENV PYTHON_SETUPTOOLS_VERSION 57.5.0
-# https://github.com/pypa/get-pip
-ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/def4aec84b261b939137dd1c69eff0aabb4a7bf4/public/get-pip.py
-ENV PYTHON_GET_PIP_SHA256 bc37786ec99618416cc0a0ca32833da447f4d91ab51d2c138dd15b7af21e8e9a
-
-RUN set -eux; \
- \
- wget -O get-pip.py "$PYTHON_GET_PIP_URL"; \
- echo "$PYTHON_GET_PIP_SHA256 *get-pip.py" | sha256sum -c -; \
- \
- export PYTHONDONTWRITEBYTECODE=1; \
- \
- python get-pip.py \
- --disable-pip-version-check \
- --no-cache-dir \
- --no-compile \
- "pip==$PYTHON_PIP_VERSION" \
- "setuptools==$PYTHON_SETUPTOOLS_VERSION" \
- # get-pip.py installs wheel by default, adding in case get-pip defaults change
- wheel \
- ; \
- rm -f get-pip.py; \
- \
- pip --version
-
CMD ["python3"]
diff --git a/python_3.8-bookworm/Dockerfile b/python_3.8-bookworm/Dockerfile
index 94e1a52..3304a49 100644
--- a/python_3.8-bookworm/Dockerfile
+++ b/python_3.8-bookworm/Dockerfile
@@ -49,7 +49,7 @@ RUN set -eux; \
--enable-option-checking=fatal \
--enable-shared \
--with-system-expat \
- --without-ensurepip \
+ --with-ensurepip \
; \
nproc="$(nproc)"; \
EXTRA_CFLAGS="$(dpkg-buildflags --get CFLAGS)"; \
@@ -89,43 +89,25 @@ RUN set -eux; \
\
ldconfig; \
\
- python3 --version
+ export PYTHONDONTWRITEBYTECODE=1; \
+ python3 --version; \
+ \
+ pip3 install \
+ --disable-pip-version-check \
+ --no-cache-dir \
+ --no-compile \
+ 'setuptools==57.5.0' \
+ wheel \
+ ; \
+ pip3 --version
# make some useful symlinks that are expected to exist ("/usr/local/bin/python" and friends)
RUN set -eux; \
- for src in idle3 pydoc3 python3 python3-config; do \
+ for src in idle3 pip3 pydoc3 python3 python3-config; do \
dst="$(echo "$src" | tr -d 3)"; \
[ -s "/usr/local/bin/$src" ]; \
[ ! -e "/usr/local/bin/$dst" ]; \
ln -svT "$src" "/usr/local/bin/$dst"; \
done
-# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
-ENV PYTHON_PIP_VERSION 23.0.1
-# https://github.com/docker-library/python/issues/365
-ENV PYTHON_SETUPTOOLS_VERSION 57.5.0
-# https://github.com/pypa/get-pip
-ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/def4aec84b261b939137dd1c69eff0aabb4a7bf4/public/get-pip.py
-ENV PYTHON_GET_PIP_SHA256 bc37786ec99618416cc0a0ca32833da447f4d91ab51d2c138dd15b7af21e8e9a
-
-RUN set -eux; \
- \
- wget -O get-pip.py "$PYTHON_GET_PIP_URL"; \
- echo "$PYTHON_GET_PIP_SHA256 *get-pip.py" | sha256sum -c -; \
- \
- export PYTHONDONTWRITEBYTECODE=1; \
- \
- python get-pip.py \
- --disable-pip-version-check \
- --no-cache-dir \
- --no-compile \
- "pip==$PYTHON_PIP_VERSION" \
- "setuptools==$PYTHON_SETUPTOOLS_VERSION" \
- # get-pip.py installs wheel by default, adding in case get-pip defaults change
- wheel \
- ; \
- rm -f get-pip.py; \
- \
- pip --version
-
CMD ["python3"]
diff --git a/python_3.8-bullseye/Dockerfile b/python_3.8-bullseye/Dockerfile
index 7020cc2..7ac4f74 100644
--- a/python_3.8-bullseye/Dockerfile
+++ b/python_3.8-bullseye/Dockerfile
@@ -49,7 +49,7 @@ RUN set -eux; \
--enable-option-checking=fatal \
--enable-shared \
--with-system-expat \
- --without-ensurepip \
+ --with-ensurepip \
; \
nproc="$(nproc)"; \
EXTRA_CFLAGS="$(dpkg-buildflags --get CFLAGS)"; \
@@ -89,43 +89,25 @@ RUN set -eux; \
\
ldconfig; \
\
- python3 --version
+ export PYTHONDONTWRITEBYTECODE=1; \
+ python3 --version; \
+ \
+ pip3 install \
+ --disable-pip-version-check \
+ --no-cache-dir \
+ --no-compile \
+ 'setuptools==57.5.0' \
+ wheel \
+ ; \
+ pip3 --version
# make some useful symlinks that are expected to exist ("/usr/local/bin/python" and friends)
RUN set -eux; \
- for src in idle3 pydoc3 python3 python3-config; do \
+ for src in idle3 pip3 pydoc3 python3 python3-config; do \
dst="$(echo "$src" | tr -d 3)"; \
[ -s "/usr/local/bin/$src" ]; \
[ ! -e "/usr/local/bin/$dst" ]; \
ln -svT "$src" "/usr/local/bin/$dst"; \
done
-# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
-ENV PYTHON_PIP_VERSION 23.0.1
-# https://github.com/docker-library/python/issues/365
-ENV PYTHON_SETUPTOOLS_VERSION 57.5.0
-# https://github.com/pypa/get-pip
-ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/def4aec84b261b939137dd1c69eff0aabb4a7bf4/public/get-pip.py
-ENV PYTHON_GET_PIP_SHA256 bc37786ec99618416cc0a0ca32833da447f4d91ab51d2c138dd15b7af21e8e9a
-
-RUN set -eux; \
- \
- wget -O get-pip.py "$PYTHON_GET_PIP_URL"; \
- echo "$PYTHON_GET_PIP_SHA256 *get-pip.py" | sha256sum -c -; \
- \
- export PYTHONDONTWRITEBYTECODE=1; \
- \
- python get-pip.py \
- --disable-pip-version-check \
- --no-cache-dir \
- --no-compile \
- "pip==$PYTHON_PIP_VERSION" \
- "setuptools==$PYTHON_SETUPTOOLS_VERSION" \
- # get-pip.py installs wheel by default, adding in case get-pip defaults change
- wheel \
- ; \
- rm -f get-pip.py; \
- \
- pip --version
-
CMD ["python3"]
diff --git a/python_3.8-slim-bullseye/Dockerfile b/python_3.8-slim-bullseye/Dockerfile
index 540282f..798393a 100644
--- a/python_3.8-slim-bullseye/Dockerfile
+++ b/python_3.8-slim-bullseye/Dockerfile
@@ -75,7 +75,7 @@ RUN set -eux; \
--enable-option-checking=fatal \
--enable-shared \
--with-system-expat \
- --without-ensurepip \
+ --with-ensurepip \
; \
nproc="$(nproc)"; \
EXTRA_CFLAGS="$(dpkg-buildflags --get CFLAGS)"; \
@@ -123,52 +123,25 @@ RUN set -eux; \
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
rm -rf /var/lib/apt/lists/*; \
\
- python3 --version
+ export PYTHONDONTWRITEBYTECODE=1; \
+ python3 --version; \
+ \
+ pip3 install \
+ --disable-pip-version-check \
+ --no-cache-dir \
+ --no-compile \
+ 'setuptools==57.5.0' \
+ wheel \
+ ; \
+ pip3 --version
# make some useful symlinks that are expected to exist ("/usr/local/bin/python" and friends)
RUN set -eux; \
- for src in idle3 pydoc3 python3 python3-config; do \
+ for src in idle3 pip3 pydoc3 python3 python3-config; do \
dst="$(echo "$src" | tr -d 3)"; \
[ -s "/usr/local/bin/$src" ]; \
[ ! -e "/usr/local/bin/$dst" ]; \
ln -svT "$src" "/usr/local/bin/$dst"; \
done
-# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
-ENV PYTHON_PIP_VERSION 23.0.1
-# https://github.com/docker-library/python/issues/365
-ENV PYTHON_SETUPTOOLS_VERSION 57.5.0
-# https://github.com/pypa/get-pip
-ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/def4aec84b261b939137dd1c69eff0aabb4a7bf4/public/get-pip.py
-ENV PYTHON_GET_PIP_SHA256 bc37786ec99618416cc0a0ca32833da447f4d91ab51d2c138dd15b7af21e8e9a
-
-RUN set -eux; \
- \
- savedAptMark="$(apt-mark showmanual)"; \
- apt-get update; \
- apt-get install -y --no-install-recommends wget; \
- \
- wget -O get-pip.py "$PYTHON_GET_PIP_URL"; \
- echo "$PYTHON_GET_PIP_SHA256 *get-pip.py" | sha256sum -c -; \
- \
- apt-mark auto '.*' > /dev/null; \
- [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; \
- apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
- rm -rf /var/lib/apt/lists/*; \
- \
- export PYTHONDONTWRITEBYTECODE=1; \
- \
- python get-pip.py \
- --disable-pip-version-check \
- --no-cache-dir \
- --no-compile \
- "pip==$PYTHON_PIP_VERSION" \
- "setuptools==$PYTHON_SETUPTOOLS_VERSION" \
- # get-pip.py installs wheel by default, adding in case get-pip defaults change
- wheel \
- ; \
- rm -f get-pip.py; \
- \
- pip --version
-
CMD ["python3"]
diff --git a/python_3.8-slim/Dockerfile b/python_3.8-slim/Dockerfile
index 572efa2..a368693 100644
--- a/python_3.8-slim/Dockerfile
+++ b/python_3.8-slim/Dockerfile
@@ -75,7 +75,7 @@ RUN set -eux; \
--enable-option-checking=fatal \
--enable-shared \
--with-system-expat \
- --without-ensurepip \
+ --with-ensurepip \
; \
nproc="$(nproc)"; \
EXTRA_CFLAGS="$(dpkg-buildflags --get CFLAGS)"; \
@@ -123,52 +123,25 @@ RUN set -eux; \
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
rm -rf /var/lib/apt/lists/*; \
\
- python3 --version
+ export PYTHONDONTWRITEBYTECODE=1; \
+ python3 --version; \
+ \
+ pip3 install \
+ --disable-pip-version-check \
+ --no-cache-dir \
+ --no-compile \
+ 'setuptools==57.5.0' \
+ wheel \
+ ; \
+ pip3 --version
# make some useful symlinks that are expected to exist ("/usr/local/bin/python" and friends)
RUN set -eux; \
- for src in idle3 pydoc3 python3 python3-config; do \
+ for src in idle3 pip3 pydoc3 python3 python3-config; do \
dst="$(echo "$src" | tr -d 3)"; \
[ -s "/usr/local/bin/$src" ]; \
[ ! -e "/usr/local/bin/$dst" ]; \
ln -svT "$src" "/usr/local/bin/$dst"; \
done
-# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
-ENV PYTHON_PIP_VERSION 23.0.1
-# https://github.com/docker-library/python/issues/365
-ENV PYTHON_SETUPTOOLS_VERSION 57.5.0
-# https://github.com/pypa/get-pip
-ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/def4aec84b261b939137dd1c69eff0aabb4a7bf4/public/get-pip.py
-ENV PYTHON_GET_PIP_SHA256 bc37786ec99618416cc0a0ca32833da447f4d91ab51d2c138dd15b7af21e8e9a
-
-RUN set -eux; \
- \
- savedAptMark="$(apt-mark showmanual)"; \
- apt-get update; \
- apt-get install -y --no-install-recommends wget; \
- \
- wget -O get-pip.py "$PYTHON_GET_PIP_URL"; \
- echo "$PYTHON_GET_PIP_SHA256 *get-pip.py" | sha256sum -c -; \
- \
- apt-mark auto '.*' > /dev/null; \
- [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; \
- apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
- rm -rf /var/lib/apt/lists/*; \
- \
- export PYTHONDONTWRITEBYTECODE=1; \
- \
- python get-pip.py \
- --disable-pip-version-check \
- --no-cache-dir \
- --no-compile \
- "pip==$PYTHON_PIP_VERSION" \
- "setuptools==$PYTHON_SETUPTOOLS_VERSION" \
- # get-pip.py installs wheel by default, adding in case get-pip defaults change
- wheel \
- ; \
- rm -f get-pip.py; \
- \
- pip --version
-
CMD ["python3"]
diff --git a/python_3.9-alpine/Dockerfile b/python_3.9-alpine/Dockerfile
index d92ff2f..91044e1 100644
--- a/python_3.9-alpine/Dockerfile
+++ b/python_3.9-alpine/Dockerfile
@@ -77,7 +77,7 @@ RUN set -eux; \
--enable-option-checking=fatal \
--enable-shared \
--with-system-expat \
- --without-ensurepip \
+ --with-ensurepip \
; \
nproc="$(nproc)"; \
# set thread stack size to 1MB so we don't segfault before we hit sys.getrecursionlimit()
@@ -118,43 +118,25 @@ RUN set -eux; \
; \
apk del --no-network .build-deps; \
\
- python3 --version
+ export PYTHONDONTWRITEBYTECODE=1; \
+ python3 --version; \
+ \
+ pip3 install \
+ --disable-pip-version-check \
+ --no-cache-dir \
+ --no-compile \
+ 'setuptools==58.1.0' \
+ wheel \
+ ; \
+ pip3 --version
# make some useful symlinks that are expected to exist ("/usr/local/bin/python" and friends)
RUN set -eux; \
- for src in idle3 pydoc3 python3 python3-config; do \
+ for src in idle3 pip3 pydoc3 python3 python3-config; do \
dst="$(echo "$src" | tr -d 3)"; \
[ -s "/usr/local/bin/$src" ]; \
[ ! -e "/usr/local/bin/$dst" ]; \
ln -svT "$src" "/usr/local/bin/$dst"; \
done
-# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
-ENV PYTHON_PIP_VERSION 23.0.1
-# https://github.com/docker-library/python/issues/365
-ENV PYTHON_SETUPTOOLS_VERSION 58.1.0
-# https://github.com/pypa/get-pip
-ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/def4aec84b261b939137dd1c69eff0aabb4a7bf4/public/get-pip.py
-ENV PYTHON_GET_PIP_SHA256 bc37786ec99618416cc0a0ca32833da447f4d91ab51d2c138dd15b7af21e8e9a
-
-RUN set -eux; \
- \
- wget -O get-pip.py "$PYTHON_GET_PIP_URL"; \
- echo "$PYTHON_GET_PIP_SHA256 *get-pip.py" | sha256sum -c -; \
- \
- export PYTHONDONTWRITEBYTECODE=1; \
- \
- python get-pip.py \
- --disable-pip-version-check \
- --no-cache-dir \
- --no-compile \
- "pip==$PYTHON_PIP_VERSION" \
- "setuptools==$PYTHON_SETUPTOOLS_VERSION" \
- # get-pip.py installs wheel by default, adding in case get-pip defaults change
- wheel \
- ; \
- rm -f get-pip.py; \
- \
- pip --version
-
CMD ["python3"]
diff --git a/python_3.9-alpine3.19/Dockerfile b/python_3.9-alpine3.19/Dockerfile
index 416d1bf..8632c56 100644
--- a/python_3.9-alpine3.19/Dockerfile
+++ b/python_3.9-alpine3.19/Dockerfile
@@ -77,7 +77,7 @@ RUN set -eux; \
--enable-option-checking=fatal \
--enable-shared \
--with-system-expat \
- --without-ensurepip \
+ --with-ensurepip \
; \
nproc="$(nproc)"; \
# set thread stack size to 1MB so we don't segfault before we hit sys.getrecursionlimit()
@@ -118,43 +118,25 @@ RUN set -eux; \
; \
apk del --no-network .build-deps; \
\
- python3 --version
+ export PYTHONDONTWRITEBYTECODE=1; \
+ python3 --version; \
+ \
+ pip3 install \
+ --disable-pip-version-check \
+ --no-cache-dir \
+ --no-compile \
+ 'setuptools==58.1.0' \
+ wheel \
+ ; \
+ pip3 --version
# make some useful symlinks that are expected to exist ("/usr/local/bin/python" and friends)
RUN set -eux; \
- for src in idle3 pydoc3 python3 python3-config; do \
+ for src in idle3 pip3 pydoc3 python3 python3-config; do \
dst="$(echo "$src" | tr -d 3)"; \
[ -s "/usr/local/bin/$src" ]; \
[ ! -e "/usr/local/bin/$dst" ]; \
ln -svT "$src" "/usr/local/bin/$dst"; \
done
-# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
-ENV PYTHON_PIP_VERSION 23.0.1
-# https://github.com/docker-library/python/issues/365
-ENV PYTHON_SETUPTOOLS_VERSION 58.1.0
-# https://github.com/pypa/get-pip
-ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/def4aec84b261b939137dd1c69eff0aabb4a7bf4/public/get-pip.py
-ENV PYTHON_GET_PIP_SHA256 bc37786ec99618416cc0a0ca32833da447f4d91ab51d2c138dd15b7af21e8e9a
-
-RUN set -eux; \
- \
- wget -O get-pip.py "$PYTHON_GET_PIP_URL"; \
- echo "$PYTHON_GET_PIP_SHA256 *get-pip.py" | sha256sum -c -; \
- \
- export PYTHONDONTWRITEBYTECODE=1; \
- \
- python get-pip.py \
- --disable-pip-version-check \
- --no-cache-dir \
- --no-compile \
- "pip==$PYTHON_PIP_VERSION" \
- "setuptools==$PYTHON_SETUPTOOLS_VERSION" \
- # get-pip.py installs wheel by default, adding in case get-pip defaults change
- wheel \
- ; \
- rm -f get-pip.py; \
- \
- pip --version
-
CMD ["python3"]
diff --git a/python_3.9-bookworm/Dockerfile b/python_3.9-bookworm/Dockerfile
index 3510679..fe0ba4c 100644
--- a/python_3.9-bookworm/Dockerfile
+++ b/python_3.9-bookworm/Dockerfile
@@ -49,7 +49,7 @@ RUN set -eux; \
--enable-option-checking=fatal \
--enable-shared \
--with-system-expat \
- --without-ensurepip \
+ --with-ensurepip \
; \
nproc="$(nproc)"; \
EXTRA_CFLAGS="$(dpkg-buildflags --get CFLAGS)"; \
@@ -88,43 +88,25 @@ RUN set -eux; \
\
ldconfig; \
\
- python3 --version
+ export PYTHONDONTWRITEBYTECODE=1; \
+ python3 --version; \
+ \
+ pip3 install \
+ --disable-pip-version-check \
+ --no-cache-dir \
+ --no-compile \
+ 'setuptools==58.1.0' \
+ wheel \
+ ; \
+ pip3 --version
# make some useful symlinks that are expected to exist ("/usr/local/bin/python" and friends)
RUN set -eux; \
- for src in idle3 pydoc3 python3 python3-config; do \
+ for src in idle3 pip3 pydoc3 python3 python3-config; do \
dst="$(echo "$src" | tr -d 3)"; \
[ -s "/usr/local/bin/$src" ]; \
[ ! -e "/usr/local/bin/$dst" ]; \
ln -svT "$src" "/usr/local/bin/$dst"; \
done
-# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
-ENV PYTHON_PIP_VERSION 23.0.1
-# https://github.com/docker-library/python/issues/365
-ENV PYTHON_SETUPTOOLS_VERSION 58.1.0
-# https://github.com/pypa/get-pip
-ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/def4aec84b261b939137dd1c69eff0aabb4a7bf4/public/get-pip.py
-ENV PYTHON_GET_PIP_SHA256 bc37786ec99618416cc0a0ca32833da447f4d91ab51d2c138dd15b7af21e8e9a
-
-RUN set -eux; \
- \
- wget -O get-pip.py "$PYTHON_GET_PIP_URL"; \
- echo "$PYTHON_GET_PIP_SHA256 *get-pip.py" | sha256sum -c -; \
- \
- export PYTHONDONTWRITEBYTECODE=1; \
- \
- python get-pip.py \
- --disable-pip-version-check \
- --no-cache-dir \
- --no-compile \
- "pip==$PYTHON_PIP_VERSION" \
- "setuptools==$PYTHON_SETUPTOOLS_VERSION" \
- # get-pip.py installs wheel by default, adding in case get-pip defaults change
- wheel \
- ; \
- rm -f get-pip.py; \
- \
- pip --version
-
CMD ["python3"]
diff --git a/python_3.9-bullseye/Dockerfile b/python_3.9-bullseye/Dockerfile
index 0a18bea..fbe07aa 100644
--- a/python_3.9-bullseye/Dockerfile
+++ b/python_3.9-bullseye/Dockerfile
@@ -49,7 +49,7 @@ RUN set -eux; \
--enable-option-checking=fatal \
--enable-shared \
--with-system-expat \
- --without-ensurepip \
+ --with-ensurepip \
; \
nproc="$(nproc)"; \
EXTRA_CFLAGS="$(dpkg-buildflags --get CFLAGS)"; \
@@ -88,43 +88,25 @@ RUN set -eux; \
\
ldconfig; \
\
- python3 --version
+ export PYTHONDONTWRITEBYTECODE=1; \
+ python3 --version; \
+ \
+ pip3 install \
+ --disable-pip-version-check \
+ --no-cache-dir \
+ --no-compile \
+ 'setuptools==58.1.0' \
+ wheel \
+ ; \
+ pip3 --version
# make some useful symlinks that are expected to exist ("/usr/local/bin/python" and friends)
RUN set -eux; \
- for src in idle3 pydoc3 python3 python3-config; do \
+ for src in idle3 pip3 pydoc3 python3 python3-config; do \
dst="$(echo "$src" | tr -d 3)"; \
[ -s "/usr/local/bin/$src" ]; \
[ ! -e "/usr/local/bin/$dst" ]; \
ln -svT "$src" "/usr/local/bin/$dst"; \
done
-# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
-ENV PYTHON_PIP_VERSION 23.0.1
-# https://github.com/docker-library/python/issues/365
-ENV PYTHON_SETUPTOOLS_VERSION 58.1.0
-# https://github.com/pypa/get-pip
-ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/def4aec84b261b939137dd1c69eff0aabb4a7bf4/public/get-pip.py
-ENV PYTHON_GET_PIP_SHA256 bc37786ec99618416cc0a0ca32833da447f4d91ab51d2c138dd15b7af21e8e9a
-
-RUN set -eux; \
- \
- wget -O get-pip.py "$PYTHON_GET_PIP_URL"; \
- echo "$PYTHON_GET_PIP_SHA256 *get-pip.py" | sha256sum -c -; \
- \
- export PYTHONDONTWRITEBYTECODE=1; \
- \
- python get-pip.py \
- --disable-pip-version-check \
- --no-cache-dir \
- --no-compile \
- "pip==$PYTHON_PIP_VERSION" \
- "setuptools==$PYTHON_SETUPTOOLS_VERSION" \
- # get-pip.py installs wheel by default, adding in case get-pip defaults change
- wheel \
- ; \
- rm -f get-pip.py; \
- \
- pip --version
-
CMD ["python3"]
diff --git a/python_3.9-slim-bullseye/Dockerfile b/python_3.9-slim-bullseye/Dockerfile
index 5067bbb..956ede2 100644
--- a/python_3.9-slim-bullseye/Dockerfile
+++ b/python_3.9-slim-bullseye/Dockerfile
@@ -75,7 +75,7 @@ RUN set -eux; \
--enable-option-checking=fatal \
--enable-shared \
--with-system-expat \
- --without-ensurepip \
+ --with-ensurepip \
; \
nproc="$(nproc)"; \
EXTRA_CFLAGS="$(dpkg-buildflags --get CFLAGS)"; \
@@ -122,52 +122,25 @@ RUN set -eux; \
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
rm -rf /var/lib/apt/lists/*; \
\
- python3 --version
+ export PYTHONDONTWRITEBYTECODE=1; \
+ python3 --version; \
+ \
+ pip3 install \
+ --disable-pip-version-check \
+ --no-cache-dir \
+ --no-compile \
+ 'setuptools==58.1.0' \
+ wheel \
+ ; \
+ pip3 --version
# make some useful symlinks that are expected to exist ("/usr/local/bin/python" and friends)
RUN set -eux; \
- for src in idle3 pydoc3 python3 python3-config; do \
+ for src in idle3 pip3 pydoc3 python3 python3-config; do \
dst="$(echo "$src" | tr -d 3)"; \
[ -s "/usr/local/bin/$src" ]; \
[ ! -e "/usr/local/bin/$dst" ]; \
ln -svT "$src" "/usr/local/bin/$dst"; \
done
-# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
-ENV PYTHON_PIP_VERSION 23.0.1
-# https://github.com/docker-library/python/issues/365
-ENV PYTHON_SETUPTOOLS_VERSION 58.1.0
-# https://github.com/pypa/get-pip
-ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/def4aec84b261b939137dd1c69eff0aabb4a7bf4/public/get-pip.py
-ENV PYTHON_GET_PIP_SHA256 bc37786ec99618416cc0a0ca32833da447f4d91ab51d2c138dd15b7af21e8e9a
-
-RUN set -eux; \
- \
- savedAptMark="$(apt-mark showmanual)"; \
- apt-get update; \
- apt-get install -y --no-install-recommends wget; \
- \
- wget -O get-pip.py "$PYTHON_GET_PIP_URL"; \
- echo "$PYTHON_GET_PIP_SHA256 *get-pip.py" | sha256sum -c -; \
- \
- apt-mark auto '.*' > /dev/null; \
- [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; \
- apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
- rm -rf /var/lib/apt/lists/*; \
- \
- export PYTHONDONTWRITEBYTECODE=1; \
- \
- python get-pip.py \
- --disable-pip-version-check \
- --no-cache-dir \
- --no-compile \
- "pip==$PYTHON_PIP_VERSION" \
- "setuptools==$PYTHON_SETUPTOOLS_VERSION" \
- # get-pip.py installs wheel by default, adding in case get-pip defaults change
- wheel \
- ; \
- rm -f get-pip.py; \
- \
- pip --version
-
CMD ["python3"]
diff --git a/python_3.9-slim/Dockerfile b/python_3.9-slim/Dockerfile
index 49f0dc9..b29051a 100644
--- a/python_3.9-slim/Dockerfile
+++ b/python_3.9-slim/Dockerfile
@@ -75,7 +75,7 @@ RUN set -eux; \
--enable-option-checking=fatal \
--enable-shared \
--with-system-expat \
- --without-ensurepip \
+ --with-ensurepip \
; \
nproc="$(nproc)"; \
EXTRA_CFLAGS="$(dpkg-buildflags --get CFLAGS)"; \
@@ -122,52 +122,25 @@ RUN set -eux; \
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
rm -rf /var/lib/apt/lists/*; \
\
- python3 --version
+ export PYTHONDONTWRITEBYTECODE=1; \
+ python3 --version; \
+ \
+ pip3 install \
+ --disable-pip-version-check \
+ --no-cache-dir \
+ --no-compile \
+ 'setuptools==58.1.0' \
+ wheel \
+ ; \
+ pip3 --version
# make some useful symlinks that are expected to exist ("/usr/local/bin/python" and friends)
RUN set -eux; \
- for src in idle3 pydoc3 python3 python3-config; do \
+ for src in idle3 pip3 pydoc3 python3 python3-config; do \
dst="$(echo "$src" | tr -d 3)"; \
[ -s "/usr/local/bin/$src" ]; \
[ ! -e "/usr/local/bin/$dst" ]; \
ln -svT "$src" "/usr/local/bin/$dst"; \
done
-# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
-ENV PYTHON_PIP_VERSION 23.0.1
-# https://github.com/docker-library/python/issues/365
-ENV PYTHON_SETUPTOOLS_VERSION 58.1.0
-# https://github.com/pypa/get-pip
-ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/def4aec84b261b939137dd1c69eff0aabb4a7bf4/public/get-pip.py
-ENV PYTHON_GET_PIP_SHA256 bc37786ec99618416cc0a0ca32833da447f4d91ab51d2c138dd15b7af21e8e9a
-
-RUN set -eux; \
- \
- savedAptMark="$(apt-mark showmanual)"; \
- apt-get update; \
- apt-get install -y --no-install-recommends wget; \
- \
- wget -O get-pip.py "$PYTHON_GET_PIP_URL"; \
- echo "$PYTHON_GET_PIP_SHA256 *get-pip.py" | sha256sum -c -; \
- \
- apt-mark auto '.*' > /dev/null; \
- [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; \
- apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
- rm -rf /var/lib/apt/lists/*; \
- \
- export PYTHONDONTWRITEBYTECODE=1; \
- \
- python get-pip.py \
- --disable-pip-version-check \
- --no-cache-dir \
- --no-compile \
- "pip==$PYTHON_PIP_VERSION" \
- "setuptools==$PYTHON_SETUPTOOLS_VERSION" \
- # get-pip.py installs wheel by default, adding in case get-pip defaults change
- wheel \
- ; \
- rm -f get-pip.py; \
- \
- pip --version
-
CMD ["python3"]
diff --git a/python_alpine/Dockerfile b/python_alpine/Dockerfile
index a34f2af..89d13a7 100644
--- a/python_alpine/Dockerfile
+++ b/python_alpine/Dockerfile
@@ -78,7 +78,7 @@ RUN set -eux; \
--enable-shared \
--with-lto \
--with-system-expat \
- --without-ensurepip \
+ --with-ensurepip \
; \
nproc="$(nproc)"; \
# set thread stack size to 1MB so we don't segfault before we hit sys.getrecursionlimit()
@@ -119,40 +119,17 @@ RUN set -eux; \
; \
apk del --no-network .build-deps; \
\
- python3 --version
+ export PYTHONDONTWRITEBYTECODE=1; \
+ python3 --version; \
+ pip3 --version
# make some useful symlinks that are expected to exist ("/usr/local/bin/python" and friends)
RUN set -eux; \
- for src in idle3 pydoc3 python3 python3-config; do \
+ for src in idle3 pip3 pydoc3 python3 python3-config; do \
dst="$(echo "$src" | tr -d 3)"; \
[ -s "/usr/local/bin/$src" ]; \
[ ! -e "/usr/local/bin/$dst" ]; \
ln -svT "$src" "/usr/local/bin/$dst"; \
done
-# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
-ENV PYTHON_PIP_VERSION 24.2
-# https://github.com/pypa/get-pip
-ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/def4aec84b261b939137dd1c69eff0aabb4a7bf4/public/get-pip.py
-ENV PYTHON_GET_PIP_SHA256 bc37786ec99618416cc0a0ca32833da447f4d91ab51d2c138dd15b7af21e8e9a
-
-RUN set -eux; \
- \
- wget -O get-pip.py "$PYTHON_GET_PIP_URL"; \
- echo "$PYTHON_GET_PIP_SHA256 *get-pip.py" | sha256sum -c -; \
- \
- export PYTHONDONTWRITEBYTECODE=1; \
- \
- python get-pip.py \
- --disable-pip-version-check \
- --no-cache-dir \
- --no-compile \
- "pip==$PYTHON_PIP_VERSION" \
- --no-setuptools \
- --no-wheel \
- ; \
- rm -f get-pip.py; \
- \
- pip --version
-
CMD ["python3"]
diff --git a/python_alpine3.19/Dockerfile b/python_alpine3.19/Dockerfile
index e2c4800..2b4b762 100644
--- a/python_alpine3.19/Dockerfile
+++ b/python_alpine3.19/Dockerfile
@@ -78,7 +78,7 @@ RUN set -eux; \
--enable-shared \
--with-lto \
--with-system-expat \
- --without-ensurepip \
+ --with-ensurepip \
; \
nproc="$(nproc)"; \
# set thread stack size to 1MB so we don't segfault before we hit sys.getrecursionlimit()
@@ -119,40 +119,17 @@ RUN set -eux; \
; \
apk del --no-network .build-deps; \
\
- python3 --version
+ export PYTHONDONTWRITEBYTECODE=1; \
+ python3 --version; \
+ pip3 --version
# make some useful symlinks that are expected to exist ("/usr/local/bin/python" and friends)
RUN set -eux; \
- for src in idle3 pydoc3 python3 python3-config; do \
+ for src in idle3 pip3 pydoc3 python3 python3-config; do \
dst="$(echo "$src" | tr -d 3)"; \
[ -s "/usr/local/bin/$src" ]; \
[ ! -e "/usr/local/bin/$dst" ]; \
ln -svT "$src" "/usr/local/bin/$dst"; \
done
-# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
-ENV PYTHON_PIP_VERSION 24.2
-# https://github.com/pypa/get-pip
-ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/def4aec84b261b939137dd1c69eff0aabb4a7bf4/public/get-pip.py
-ENV PYTHON_GET_PIP_SHA256 bc37786ec99618416cc0a0ca32833da447f4d91ab51d2c138dd15b7af21e8e9a
-
-RUN set -eux; \
- \
- wget -O get-pip.py "$PYTHON_GET_PIP_URL"; \
- echo "$PYTHON_GET_PIP_SHA256 *get-pip.py" | sha256sum -c -; \
- \
- export PYTHONDONTWRITEBYTECODE=1; \
- \
- python get-pip.py \
- --disable-pip-version-check \
- --no-cache-dir \
- --no-compile \
- "pip==$PYTHON_PIP_VERSION" \
- --no-setuptools \
- --no-wheel \
- ; \
- rm -f get-pip.py; \
- \
- pip --version
-
CMD ["python3"]
diff --git a/python_bookworm/Dockerfile b/python_bookworm/Dockerfile
index 890b797..2ff3e16 100644
--- a/python_bookworm/Dockerfile
+++ b/python_bookworm/Dockerfile
@@ -50,7 +50,7 @@ RUN set -eux; \
--enable-shared \
--with-lto \
--with-system-expat \
- --without-ensurepip \
+ --with-ensurepip \
; \
nproc="$(nproc)"; \
EXTRA_CFLAGS="$(dpkg-buildflags --get CFLAGS)"; \
@@ -89,40 +89,17 @@ RUN set -eux; \
\
ldconfig; \
\
- python3 --version
+ export PYTHONDONTWRITEBYTECODE=1; \
+ python3 --version; \
+ pip3 --version
# make some useful symlinks that are expected to exist ("/usr/local/bin/python" and friends)
RUN set -eux; \
- for src in idle3 pydoc3 python3 python3-config; do \
+ for src in idle3 pip3 pydoc3 python3 python3-config; do \
dst="$(echo "$src" | tr -d 3)"; \
[ -s "/usr/local/bin/$src" ]; \
[ ! -e "/usr/local/bin/$dst" ]; \
ln -svT "$src" "/usr/local/bin/$dst"; \
done
-# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
-ENV PYTHON_PIP_VERSION 24.2
-# https://github.com/pypa/get-pip
-ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/def4aec84b261b939137dd1c69eff0aabb4a7bf4/public/get-pip.py
-ENV PYTHON_GET_PIP_SHA256 bc37786ec99618416cc0a0ca32833da447f4d91ab51d2c138dd15b7af21e8e9a
-
-RUN set -eux; \
- \
- wget -O get-pip.py "$PYTHON_GET_PIP_URL"; \
- echo "$PYTHON_GET_PIP_SHA256 *get-pip.py" | sha256sum -c -; \
- \
- export PYTHONDONTWRITEBYTECODE=1; \
- \
- python get-pip.py \
- --disable-pip-version-check \
- --no-cache-dir \
- --no-compile \
- "pip==$PYTHON_PIP_VERSION" \
- --no-setuptools \
- --no-wheel \
- ; \
- rm -f get-pip.py; \
- \
- pip --version
-
CMD ["python3"]
diff --git a/python_bullseye/Dockerfile b/python_bullseye/Dockerfile
index df4ff9e..0d32ee6 100644
--- a/python_bullseye/Dockerfile
+++ b/python_bullseye/Dockerfile
@@ -50,7 +50,7 @@ RUN set -eux; \
--enable-shared \
--with-lto \
--with-system-expat \
- --without-ensurepip \
+ --with-ensurepip \
; \
nproc="$(nproc)"; \
EXTRA_CFLAGS="$(dpkg-buildflags --get CFLAGS)"; \
@@ -89,40 +89,17 @@ RUN set -eux; \
\
ldconfig; \
\
- python3 --version
+ export PYTHONDONTWRITEBYTECODE=1; \
+ python3 --version; \
+ pip3 --version
# make some useful symlinks that are expected to exist ("/usr/local/bin/python" and friends)
RUN set -eux; \
- for src in idle3 pydoc3 python3 python3-config; do \
+ for src in idle3 pip3 pydoc3 python3 python3-config; do \
dst="$(echo "$src" | tr -d 3)"; \
[ -s "/usr/local/bin/$src" ]; \
[ ! -e "/usr/local/bin/$dst" ]; \
ln -svT "$src" "/usr/local/bin/$dst"; \
done
-# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
-ENV PYTHON_PIP_VERSION 24.2
-# https://github.com/pypa/get-pip
-ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/def4aec84b261b939137dd1c69eff0aabb4a7bf4/public/get-pip.py
-ENV PYTHON_GET_PIP_SHA256 bc37786ec99618416cc0a0ca32833da447f4d91ab51d2c138dd15b7af21e8e9a
-
-RUN set -eux; \
- \
- wget -O get-pip.py "$PYTHON_GET_PIP_URL"; \
- echo "$PYTHON_GET_PIP_SHA256 *get-pip.py" | sha256sum -c -; \
- \
- export PYTHONDONTWRITEBYTECODE=1; \
- \
- python get-pip.py \
- --disable-pip-version-check \
- --no-cache-dir \
- --no-compile \
- "pip==$PYTHON_PIP_VERSION" \
- --no-setuptools \
- --no-wheel \
- ; \
- rm -f get-pip.py; \
- \
- pip --version
-
CMD ["python3"]
diff --git a/python_slim-bullseye/Dockerfile b/python_slim-bullseye/Dockerfile
index c1ff097..ca3d6fd 100644
--- a/python_slim-bullseye/Dockerfile
+++ b/python_slim-bullseye/Dockerfile
@@ -76,7 +76,7 @@ RUN set -eux; \
--enable-shared \
--with-lto \
--with-system-expat \
- --without-ensurepip \
+ --with-ensurepip \
; \
nproc="$(nproc)"; \
EXTRA_CFLAGS="$(dpkg-buildflags --get CFLAGS)"; \
@@ -123,49 +123,17 @@ RUN set -eux; \
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
rm -rf /var/lib/apt/lists/*; \
\
- python3 --version
+ export PYTHONDONTWRITEBYTECODE=1; \
+ python3 --version; \
+ pip3 --version
# make some useful symlinks that are expected to exist ("/usr/local/bin/python" and friends)
RUN set -eux; \
- for src in idle3 pydoc3 python3 python3-config; do \
+ for src in idle3 pip3 pydoc3 python3 python3-config; do \
dst="$(echo "$src" | tr -d 3)"; \
[ -s "/usr/local/bin/$src" ]; \
[ ! -e "/usr/local/bin/$dst" ]; \
ln -svT "$src" "/usr/local/bin/$dst"; \
done
-# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
-ENV PYTHON_PIP_VERSION 24.2
-# https://github.com/pypa/get-pip
-ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/def4aec84b261b939137dd1c69eff0aabb4a7bf4/public/get-pip.py
-ENV PYTHON_GET_PIP_SHA256 bc37786ec99618416cc0a0ca32833da447f4d91ab51d2c138dd15b7af21e8e9a
-
-RUN set -eux; \
- \
- savedAptMark="$(apt-mark showmanual)"; \
- apt-get update; \
- apt-get install -y --no-install-recommends wget; \
- \
- wget -O get-pip.py "$PYTHON_GET_PIP_URL"; \
- echo "$PYTHON_GET_PIP_SHA256 *get-pip.py" | sha256sum -c -; \
- \
- apt-mark auto '.*' > /dev/null; \
- [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; \
- apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
- rm -rf /var/lib/apt/lists/*; \
- \
- export PYTHONDONTWRITEBYTECODE=1; \
- \
- python get-pip.py \
- --disable-pip-version-check \
- --no-cache-dir \
- --no-compile \
- "pip==$PYTHON_PIP_VERSION" \
- --no-setuptools \
- --no-wheel \
- ; \
- rm -f get-pip.py; \
- \
- pip --version
-
CMD ["python3"]
diff --git a/python_slim/Dockerfile b/python_slim/Dockerfile
index b61f179..d9a77a2 100644
--- a/python_slim/Dockerfile
+++ b/python_slim/Dockerfile
@@ -76,7 +76,7 @@ RUN set -eux; \
--enable-shared \
--with-lto \
--with-system-expat \
- --without-ensurepip \
+ --with-ensurepip \
; \
nproc="$(nproc)"; \
EXTRA_CFLAGS="$(dpkg-buildflags --get CFLAGS)"; \
@@ -123,49 +123,17 @@ RUN set -eux; \
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
rm -rf /var/lib/apt/lists/*; \
\
- python3 --version
+ export PYTHONDONTWRITEBYTECODE=1; \
+ python3 --version; \
+ pip3 --version
# make some useful symlinks that are expected to exist ("/usr/local/bin/python" and friends)
RUN set -eux; \
- for src in idle3 pydoc3 python3 python3-config; do \
+ for src in idle3 pip3 pydoc3 python3 python3-config; do \
dst="$(echo "$src" | tr -d 3)"; \
[ -s "/usr/local/bin/$src" ]; \
[ ! -e "/usr/local/bin/$dst" ]; \
ln -svT "$src" "/usr/local/bin/$dst"; \
done
-# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
-ENV PYTHON_PIP_VERSION 24.2
-# https://github.com/pypa/get-pip
-ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/def4aec84b261b939137dd1c69eff0aabb4a7bf4/public/get-pip.py
-ENV PYTHON_GET_PIP_SHA256 bc37786ec99618416cc0a0ca32833da447f4d91ab51d2c138dd15b7af21e8e9a
-
-RUN set -eux; \
- \
- savedAptMark="$(apt-mark showmanual)"; \
- apt-get update; \
- apt-get install -y --no-install-recommends wget; \
- \
- wget -O get-pip.py "$PYTHON_GET_PIP_URL"; \
- echo "$PYTHON_GET_PIP_SHA256 *get-pip.py" | sha256sum -c -; \
- \
- apt-mark auto '.*' > /dev/null; \
- [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; \
- apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
- rm -rf /var/lib/apt/lists/*; \
- \
- export PYTHONDONTWRITEBYTECODE=1; \
- \
- python get-pip.py \
- --disable-pip-version-check \
- --no-cache-dir \
- --no-compile \
- "pip==$PYTHON_PIP_VERSION" \
- --no-setuptools \
- --no-wheel \
- ; \
- rm -f get-pip.py; \
- \
- pip --version
-
CMD ["python3"]
diff --git a/python_windowsservercore-1809/Dockerfile b/python_windowsservercore-1809/Dockerfile
index 3d22175..d41dfd0 100644
--- a/python_windowsservercore-1809/Dockerfile
+++ b/python_windowsservercore-1809/Dockerfile
@@ -28,7 +28,7 @@ RUN $url = ('https://www.python.org/ftp/python/{0}/python-{1}-amd64.exe' -f ($en
'PrependPath=1', \
'Shortcuts=0', \
'Include_doc=0', \
- 'Include_pip=0', \
+ 'Include_pip=1', \
'Include_test=0' \
) \
).ExitCode; \
@@ -48,36 +48,8 @@ RUN $url = ('https://www.python.org/ftp/python/{0}/python-{1}-amd64.exe' -f ($en
Remove-Item python.exe -Force; \
Remove-Item $env:TEMP/Python*.log -Force; \
\
- Write-Host 'Complete.'
-
-# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
-ENV PYTHON_PIP_VERSION 24.2
-# https://github.com/pypa/get-pip
-ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/def4aec84b261b939137dd1c69eff0aabb4a7bf4/public/get-pip.py
-ENV PYTHON_GET_PIP_SHA256 bc37786ec99618416cc0a0ca32833da447f4d91ab51d2c138dd15b7af21e8e9a
-
-RUN Write-Host ('Downloading get-pip.py ({0}) ...' -f $env:PYTHON_GET_PIP_URL); \
- [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
- Invoke-WebRequest -Uri $env:PYTHON_GET_PIP_URL -OutFile 'get-pip.py'; \
- Write-Host ('Verifying sha256 ({0}) ...' -f $env:PYTHON_GET_PIP_SHA256); \
- if ((Get-FileHash 'get-pip.py' -Algorithm sha256).Hash -ne $env:PYTHON_GET_PIP_SHA256) { \
- Write-Host 'FAILED!'; \
- exit 1; \
- }; \
- \
$env:PYTHONDONTWRITEBYTECODE = '1'; \
\
- Write-Host ('Installing pip=={0} ...' -f $env:PYTHON_PIP_VERSION); \
- python get-pip.py \
- --disable-pip-version-check \
- --no-cache-dir \
- --no-compile \
- ('pip=={0}' -f $env:PYTHON_PIP_VERSION) \
- --no-setuptools \
- --no-wheel \
- ; \
- Remove-Item get-pip.py -Force; \
- \
Write-Host 'Verifying pip install ...'; \
pip --version; \
\
diff --git a/python_windowsservercore-ltsc2022/Dockerfile b/python_windowsservercore-ltsc2022/Dockerfile
index 8c68977..09a2a4e 100644
--- a/python_windowsservercore-ltsc2022/Dockerfile
+++ b/python_windowsservercore-ltsc2022/Dockerfile
@@ -28,7 +28,7 @@ RUN $url = ('https://www.python.org/ftp/python/{0}/python-{1}-amd64.exe' -f ($en
'PrependPath=1', \
'Shortcuts=0', \
'Include_doc=0', \
- 'Include_pip=0', \
+ 'Include_pip=1', \
'Include_test=0' \
) \
).ExitCode; \
@@ -48,36 +48,8 @@ RUN $url = ('https://www.python.org/ftp/python/{0}/python-{1}-amd64.exe' -f ($en
Remove-Item python.exe -Force; \
Remove-Item $env:TEMP/Python*.log -Force; \
\
- Write-Host 'Complete.'
-
-# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'"
-ENV PYTHON_PIP_VERSION 24.2
-# https://github.com/pypa/get-pip
-ENV PYTHON_GET_PIP_URL https://github.com/pypa/get-pip/raw/def4aec84b261b939137dd1c69eff0aabb4a7bf4/public/get-pip.py
-ENV PYTHON_GET_PIP_SHA256 bc37786ec99618416cc0a0ca32833da447f4d91ab51d2c138dd15b7af21e8e9a
-
-RUN Write-Host ('Downloading get-pip.py ({0}) ...' -f $env:PYTHON_GET_PIP_URL); \
- [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
- Invoke-WebRequest -Uri $env:PYTHON_GET_PIP_URL -OutFile 'get-pip.py'; \
- Write-Host ('Verifying sha256 ({0}) ...' -f $env:PYTHON_GET_PIP_SHA256); \
- if ((Get-FileHash 'get-pip.py' -Algorithm sha256).Hash -ne $env:PYTHON_GET_PIP_SHA256) { \
- Write-Host 'FAILED!'; \
- exit 1; \
- }; \
- \
$env:PYTHONDONTWRITEBYTECODE = '1'; \
\
- Write-Host ('Installing pip=={0} ...' -f $env:PYTHON_PIP_VERSION); \
- python get-pip.py \
- --disable-pip-version-check \
- --no-cache-dir \
- --no-compile \
- ('pip=={0}' -f $env:PYTHON_PIP_VERSION) \
- --no-setuptools \
- --no-wheel \
- ; \
- Remove-Item get-pip.py -Force; \
- \
Write-Host 'Verifying pip install ...'; \
pip --version; \
\ Relevant Maintainers: |
yosifkit
approved these changes
Sep 12, 2024
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Changes: