/docker-builder

A Docker image providing tools for... building Docker Images (usually in rootless or daemon-less contexts)

Primary LanguageMakefile

Docker Image for Building Docker Images

Inception

This repository hosts the resources to build a Docker Image used for…​ building Docker Images.

Its target is to allow building OCI compliant images in rootless or daemonless contexts as Kubernetes non privileged pods.

eyJjb2RlIjoiZ3JhcGggTFJcbiAgICBBW0RvY2tlcmZpbGVdIC0tPnxtYWtlIGxpbnR8IEIoRG9ja2VyZmlsZSlcbiAgICBCIC0tPiB8bWFrZSBidWlsZHwgQ1tpbWFnZS50YXJdXG4gICAgQyAtLT4gfG1ha2UgdGVzdHwgRChpbWFnZS50YXIpXG4gICAgRCAtLT4gfG1ha2UgZGVwbG95fCBFKHJlZ2lzdHJ5LmRvY2tlci9pbWFnZTp0YWcpXG4gICAgRSAtLT4gfG1ha2UgcmVsZWFzZXwgRihyZWdpc3RyeS5kb2NrZXIvaW1hZ2U6bGF0ZXN0KVxuICBcbiAgICAgICAgICAgICIsIm1lcm1haWQiOnsidGhlbWUiOiJkZWZhdWx0In0sInVwZGF0ZUVkaXRvciI6ZmFsc2V9

Requirements

Bare Requirements

If you cannot fulfil these requirements, please check the Using Docker section instead.

Using Docker

If you prefer to run all the below commands in a Docker image instead of the Bare Requirements (or if you cannot meet the bare-requirements):

docker run --rm --tty --interactive --volume=$(pwd):/app --workdir=/app --entrypoint=bash \
  --security-opt seccomp=unconfined --security-opt apparmor=unconfined \
  jenkinsciinfra/builder:latest
> make help

Build Image

With the Requirements installed for the Build phase, you can build the image with the command make build.

Test Image

With the Requirements installed for the Test phase, you can build the image with the command make test.

Deploy Image

With the Requirements installed for the Deploy phase, you can build the image:

  • First by logging in to the Docker registry where you want to deploy the image to, with the command img login <Registry’s URL if it is not the DockerHub>

  • Running the command make deploy