Sign inSign up
pypy logo

pypy:3.12-slim

Multi-platform
Also known as:
3.12-8-slim
3.12-8-slim-trixie
3.12-8.0-slim
3.12-8.0-slim-trixie
3.12-8.0.1-slim
3.12-8.0.1-slim-trixie
3.12-slim-trixie
Languages & frameworks
Index digest

sha256:410aad485440d238a596fd5f847a99d3f7c11be895ce25c02b336f5c5d1733bb

OS/ARCH

Compressed size

62.26 MB

Last pushed

7 days by doijanky

Type

Image

Vulnerabilities

0
4
7
30
5

Manifest digest

sha256:a2ec1027b5ffdaac8a3eb62a538365b9a9d03c9635bcbdd392ead4f9b5a4b89a

Layers (7)

debian:30ac6ee7c65a8442e3640ede4ffc910a92dec9413d0b97829dccbaf97c86ce4c
0
4
2
29
5
pypy:3.12-slim
0
2
6
4
5

1

RUN /bin/sh -c set -eux; apt-get update; apt-get install -y --no-install-recommends ca-certificates; rm -rf /var/lib/apt/lists/* # buildkit

1.22 MB


2

ENV LANG=C.UTF-8

0 B


3

ENV PATH=/opt/pypy/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

0 B


4

ENV PYPY_VERSION=8.0.1

0 B


5

RUN /bin/sh -c set -eux; dpkgArch="$(dpkg --print-architecture)"; case "${dpkgArch##*-}" in 'amd64') url='https://downloads.python.org/pypy/pypy3.12-v8.0.1-linux64.tar.gz'; sha256='aeed27797777296d9c94e53bdfa608804696dbd4ff9f2213003cce064ee46ef8'; ;; 'arm64') url='https://downloads.python.org/pypy/pypy3.12-v8.0.1-aarch64.tar.gz'; sha256='4dd9611f782f0974ffd25b521120b4297049daec05a3cec5698dbc6022c74fb9'; ;; 'i386') url='https://downloads.python.org/pypy/pypy3.12-v8.0.1-linux32.tar.gz'; sha256='aac46889fd2e85e522f5446256cd57167f91648c48d906d79eb593c812dbe55f'; ;; *) echo >&2 "error: current architecture ($dpkgArch) does not have a corresponding PyPy $PYPY_VERSION binary release"; exit 1 ;; esac; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends wget libfontconfig1 ; wget -O pypy.tar.gz "$url" --progress=dot:giga; echo "$sha256 *pypy.tar.gz" | sha256sum --check --strict -; mkdir /opt/pypy; tar -xzC /opt/pypy --strip-components=1 -f pypy.tar.gz; find /opt/pypy/lib* -depth -type d -a \( -name test -o -name tests \) -exec rm -rf '{}' +; rm pypy.tar.gz; rm -v /opt/pypy/lib/libtk*.so /opt/pypy/lib/libz.so*; ln -sv '/opt/pypy/bin/pypy3' /usr/local/bin/; pypy3 --version; cd /opt/pypy/lib/pypy3.12; if [ -f _gdbm_build.py ]; then apt-get install -y --no-install-recommends gcc libc6-dev libgdbm-dev; pypy3 _gdbm_build.py; fi; if [ -f _ssl_build.py ]; then apt-get install -y --no-install-recommends gcc libc6-dev libssl-dev; pypy3 _ssl_build.py; fi; if [ -f _lzma_build.py ]; then apt-get install -y --no-install-recommends gcc libc6-dev liblzma-dev; pypy3 _lzma_build.py; fi; if [ -f _sqlite3_build.py ]; then apt-get install -y --no-install-recommends gcc libc6-dev libsqlite3-dev; pypy3 _sqlite3_build.py; fi; if [ -f _tkinter/tklib_build.py ]; then apt-get install -y --no-install-recommends gcc libc6-dev tk-dev; pypy3 _tkinter/tklib_build.py; fi; apt-mark auto '.*' > /dev/null; [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; export shellPid="$$"; find /opt/pypy -type f -executable -exec ldd '{}' ';' | grep -vE 'lib(tcl|tk|X[a-z]*)[0-9]*[.]' | awk '/not found/ { print >> "/dev/stderr"; system("kill -9 -$shellPid") } /=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1 || index(so, "/opt/pypy/") == 1) { next }; gsub("^/(usr/)?", "", so); printf "*%s\n", so }' | sort -u | xargs -rt dpkg-query --search | awk 'sub(":$", "", $1) { print $1 }' | sort -u | xargs -r apt-mark manual ; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; rm -rf /var/lib/apt/lists/*; pypy3 --version; pypy3 -m ensurepip --default-pip; pip --version; find /opt/pypy -depth \( \( -type d -a \( -name test -o -name tests \) \) -o \( -type f -a \( -name '*.pyc' -o -name '*.pyo' \) \) \) -exec rm -rf '{}' + # buildkit

34.2 MB


6

CMD ["pypy3"]

0 B