Docker image to build Debian package of Python apps/libraries
.gitignore | ||
Dockerfile.common | ||
Dockerfile.debian9 | ||
Dockerfile.debian10 | ||
Dockerfile.debian11 | ||
Dockerfile.debian12 | ||
README.md |
Docker image to build Debian package of Python apps/libraries
Image with common dependencies to build Debian package of Python apps/libraries :
- common Debian python packages:
python3-all python3-dev python3-pip python3-venv python3-apt python3-appdirs python3-wheel python3-git python3-setuptools
- common PIP installed python packages:
stdeb poetry2setup wheel2deb pylint pytest flake8 flake8-junit-report pylint-junit junitparser pylint-gitlab flake8-codeclimate python3-argcomplete
. Note:pylint-gitlab
not available on Debian 9. - common Debian packages building tools:
apt-file dpkg-dev fakeroot build-essential devscripts debhelper dh-python equivs
- common tools:
sed lsb-release gnupg2 curl jq git rsync wget ca-certificates bash-completion
- gitdch tool
- based on Debian slim version of Node docker images to allow using it with Forgejo Actions.
- use
/bin/bash
as entrypoint
To use it:
docker run -it -v "$(pwd)":/src -w /src docker.io/brenard/debian-python-deb
Build
# Need to use Dockerfile+ (https://github.com/edrevo/dockerfile-plus)
export DOCKER_BUILDKIT=1
export COMPOSE_DOCKER_CLI_BUILD=1
for deb_version in 9 10 11 12
do
docker build -t docker.io/brenard/debian-python-deb:debian${deb_version} -f Dockerfile.debian${deb_version} .
done
docker build -t docker.io/brenard/debian-python-deb:latest -f Dockerfile.debian${deb_version} .
Publish
for deb_version in 9 10 11 12
do
docker push docker.io/brenard/debian-python-deb:debian${deb_version}
done
docker push docker.io/brenard/debian-python-deb:latest