feat: replace alpine with chainguard distroless images #7
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The aim of this pull request is to migrate the repeater's Docker image from an Alpine-based image to a distroless image. The main advantages are as follows:
The first distroless images were produced by GoogleContainerTools, which has distroless images designed to run C, Go, Java, Node.js and Python images. Google's images are produced using a custom process orchestrated by their construction tool Bazel. Here are the benefits highlighted on their GitHub:
However, this pull request is based on distroless images from Chainguard. Chainguard distroless images are hardened and up-to-date distroless images. These images are easier to customize as there a build using apko and melange instead of Bazel. Here are the benefits highlighted on their website:
In terms of hardening, they use a
nonroot
user by default, which reduces the risk of container breakout. Chainguard images are built automatically every night to ensure that they are completely up to date and contain all available security patches. More details can be found on their blog post.While not a panacea, the use of distroless images is good practice for sensitive, long-term containers such as Escape's repeater agent.