python

A Docker image that contains just the basic tools with a Python environment. It’s main usage is within a continuous integration script.

Downloading

cappysan/python can be downloaded from GitLab:

docker pull registry.gitlab.com/cappysan/images/python:3.6
docker pull registry.gitlab.com/cappysan/images/python:3.7
docker pull registry.gitlab.com/cappysan/images/python:3.8
docker pull registry.gitlab.com/cappysan/images/python:3.9
docker pull registry.gitlab.com/cappysan/images/python:3.10
docker pull registry.gitlab.com/cappysan/images/python:3.11
docker pull registry.gitlab.com/cappysan/images/python:3.12

Contents

This docker inherits from python:3.x-slim and adds:

  • curl to be able to trigger webhooks

  • gettext to have envsubst to alter Dockerfiles on the fly (without using Docker build-args)

  • docker-systemctl-replacement as a SystemD systemctl replacement

  • git to be able to read current repository

  • gron to be able to parse a JSON response

  • jq to be able to parse a JSON response

  • make to enable building Dockerfiles via Makefiles

  • moreutils to have tools such as sponge

  • pipx to be able to install Python packages

  • pre-commit preinstalled for Python jobs

  • python3-tomli to be able to read pyproject.toml

  • python3-venv to be able to install Python packages

  • rsync to be able to handle remote file repositories and merging

  • sphinx, and dependencies, preinstalled for Python jobs

  • yq to be able to parse a YAML files

Status

The status of the Docker image depends on the underlying Python version. Refer to: https://devguide.python.org/versions/

Title

image

status

python:3.6

deprecated

python:3.7

deprecated

python:3.8

end-of-life: 2024-10

python:3.9

end-of-life: 2025-10

python:3.10

end-of-life: 2026-10

python:3.11

end-of-life: 2027-10

python:3.12

end-of-life: 2028-10

Usage

An example of cappysan/python:3.x usage in a GitLab CI:

job:
  image: registry.gitlab.com/cappysan/images/python:3.11
  stage: build
  script:
    - make check