The statically compiled, cross architecture, Docker based, binaries pot.
The usage is focused to build other Docker images.
For example:
FROM alpine:3.14
COPY --from=kbuley/binpot:helm /bin /usr/local/bin/helm
- The Docker image tags for
kbuley/binpot
follow the following formatting::name
for the latest stable version of the programname
:name-v0.0.0
for the semver version of the programname
- Each Docker image is based on scratch and only contain the binary program at the path
/bin
. - Each Docker image and binary program is built for each of the possible CPU architecture supported by Docker, unless indicated otherwise.
- Each binary has permissions
500
(read and execute for the user owner) - You can change the ownership in the
COPY
command using--chown=1000
for example, without duplicating the binary in your Docker image layers. - Each Docker image has an entrypoint
[ "/bin" ]
so you can run it as well
Need help?
Thinking of copying the binary for your host?
Program | Lastversion | Imagetags | Architectures |
---|---|---|---|
bit |
v1.1.2 |
DockerHub | all |
buildx |
v0.12.0 |
DockerHub | all |
compose |
v2.23.3 |
DockerHub | all |
dlv |
v1.21.2 |
DockerHub | all |
docker |
v24.0.7 |
DockerHub | all |
gh |
v2.40.1 |
DockerHub | all |
golangci-lint |
v1.55.2 |
DockerHub | all |
gomock |
v1.6.0 |
DockerHub | all |
gomodifytags |
v1.16.0 |
DockerHub | all |
go-outline |
9736a4b |
DockerHub | all |
gopkgs |
v2.1.2 |
DockerHub | all |
goplay |
v1.0.0 |
DockerHub | all |
gopls |
v0.14.2 |
DockerHub | all |
gotests |
v1.6.0 |
DockerHub | all |
helm |
v3.13.3 |
DockerHub | all |
impl |
v1.2.0 |
DockerHub | all |
kubectl |
v1.29.0 |
DockerHub | all |
kubectx |
v0.9.5 |
DockerHub | all |
kubens |
v0.9.5 |
DockerHub | all |
logo-ls |
v1.3.7 |
DockerHub | all |
mockery |
v2.38.0 |
DockerHub | all |
mockgen |
v1.6.0 |
DockerHub | all |
stern |
v1.27.0 |
DockerHub | all |
supervisord |
v0.7.3 |
DockerHub | all |
lazygit |
v0.40.2 |
DockerHub | all |
chezmoi |
v2.42.3 |
DockerHub | all |
ℹ️all architecturesmeans:linux/amd64,linux/arm64 |
Want more!?
- For each program, a Dockerfile describes how to build it. The final binary is placed on a final scratch based Docker image. Example:
helm
has./dockerfiles/helm/Dockerfile
- For each program, a Github Action workflow is triggered when its Dockerfile or the workflow itself is changed. This workflow takes care of:
- Cross build the program for all CPU architectures
- Pushing the images containing the program to Docker Hub
If you want to use the binary directly on your host, you can do it with Docker. This has the advantage that it will automatically get the right binary for your host platform.
In the following we want to install helm
on our host.
For example:
export PROGRAM="helm" && \
docker pull "kbuley/binpot:$PROGRAM" && \
containerid="$(docker create kbuley/binpot:$PROGRAM)" && \
docker cp "$containerid:/bin" "/usr/local/bin/$PROGRAM" && \
docker rm "$containerid"
Test Helm works with helm
- Change version of go-outline once a release tag is made: Github issue