diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..ba475ca --- /dev/null +++ b/Dockerfile @@ -0,0 +1,11 @@ +FROM python:3-slim AS BUILDBASE + +RUN useradd -m user && \ + mkdir -vp /workspace && \ + chown user /workspace + +USER user +WORKDIR /workspace +ENV PYTHONPATH="${PYTHONPATH}:/home/user/.local/bin" +ENV PATH="${PATH}:/home/user/.local/bin" +RUN pip install --no-cache-dir -r /tmp/build-requirements.txt diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..1a1f931 --- /dev/null +++ b/Makefile @@ -0,0 +1,26 @@ +#! /usr/bin/make +.DEFAULT_GOAL := push-container + +CONTAINER_REGISTRY=creg.xfx1.de +CONTAINER_IMAGE_NAME=${CONTAINER_REGISTRY}/python-build-base +CONTAINER_IMAGE_TAG=latest + +build-container: + podman run \ + -v ${HOME}/.kaniko/registries.json:/kaniko/.docker/config.json \ + -v ${PWD}/Dockerfile:/tmp/Dockerfile:ro \ + -v ${PWD}/build-requirements.txt:/tmp/build-requirements.txt:ro \ + gcr.io/kaniko-project/executor:latest \ + --dockerfile /tmp/Dockerfile \ + --context dir:///workspace \ + --no-push + +push-container: + podman run \ + -v ${HOME}/.kaniko/registries.json:/kaniko/.docker/config.json \ + -v ${PWD}/Dockerfile:/tmp/Dockerfile:ro \ + -v ${PWD}/build-requirements.txt:/tmp/build-requirements.txt:ro \ + gcr.io/kaniko-project/executor:latest \ + --dockerfile /tmp/Dockerfile \ + --context dir:///workspace \ + --destination ${CONTAINER_IMAGE_NAME}:${CONTAINER_IMAGE_TAG} \ No newline at end of file diff --git a/build-requirements.txt b/build-requirements.txt new file mode 100644 index 0000000..8593ff6 --- /dev/null +++ b/build-requirements.txt @@ -0,0 +1,4 @@ +build +pytest +twine +flake8 \ No newline at end of file