An open API service indexing awesome lists of open source software.

https://github.com/intellection/docker-image-builder


https://github.com/intellection/docker-image-builder

Last synced: 2 months ago
JSON representation

Awesome Lists containing this project

README

          

# Docker Image Builder

A purpose-built image for building and pushing container images via remote [BuildKit](https://github.com/moby/buildkit) daemons. It carries only what is needed for this role — no Docker Engine daemon and no general build toolchains.

Published to Docker Hub as [`zappi/image-builder`](https://hub.docker.com/r/zappi/image-builder). Built for `linux/amd64` and `linux/arm64`.

## Contents

| Component | Version |
|-----------|---------|
| Base image | Ubuntu 24.04 LTS |
| [Git](https://git-scm.com/) | distro package |
| [Git LFS](https://git-lfs.com/) | distro package |
| [Docker CLI](https://github.com/docker/cli) | 29.3.0 |
| [Docker Buildx plugin](https://github.com/docker/buildx) | 0.31.1 |
| [Amazon ECR Credential Helper](https://github.com/awslabs/amazon-ecr-credential-helper) | 0.12.0 |

`git` and `git-lfs` are included as part of the builder toolchain.

The image runs as a non-root `builder` user (UID/GID `65533`).

## Docker CLI Configuration

No `~/.docker/config.json` is baked into the image. It is expected to be provided at runtime — for example, mounted via a Kubernetes ConfigMap.

### AWS ECR Credential Helper Configuration

The config should wire the ECR credential helper for the registries the builder needs to authenticate with:

```json
{
"credHelpers": {
"public.ecr.aws": "ecr-login",
".dkr.ecr..amazonaws.com": "ecr-login"
}
}
```

The ECR credential helper (`docker-credential-ecr-login`) is already present in the image. It follows the standard [AWS credential chain](https://docs.aws.amazon.com/sdkref/latest/guide/standardized-credentials.html#credentialProviders), so no static credentials need to be baked into the image.

## Releases

Images are tagged and pushed to Docker Hub on every [GitHub Release](https://github.com/Intellection/docker-image-builder/releases). Tags follow the version in the release (e.g. `zappi/image-builder:1.0.0`).

## References

- [docker/cli](https://github.com/docker/cli)
- [docker/buildx](https://github.com/docker/buildx)
- [git/git](https://github.com/git/git)
- [git-lfs/git-lfs](https://github.com/git-lfs/git-lfs)
- [awslabs/amazon-ecr-credential-helper](https://github.com/awslabs/amazon-ecr-credential-helper)