Mutli Platform Images: build arm64 images #4
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.
Name: Multi Platform Images
About: switched build workflow to multi platform images
Intention:
I'm running a k8s cluster with arm64 only nodes. As the containerSSH images previously were amd64 only I wasn't able to run it on those nodes. As there are already arm64 binaries building arm64 images is also possible.
Changes
Improvements to Docker and Docker Compose:
.github/workflows/push.yml
and.github/workflows/tag.yml
: Updated the Docker Buildx setup to include multi-platform support forlinux/amd64
andlinux/arm64
. "docker-compose" install isn't needed anymore as buildx contains "docker compose" [1] [2]docker-compose.yaml
: Added platform specifications forlinux/amd64
andlinux/arm64
to the build contexts forcontainerssh
andcontainerssh-test-authconfig
services. [1] [2]Updates to
build.go
script:docker-compose
commands withdocker compose
as docker-compose is legacy and not included in standard buildx installations anymore. [1] [2] [3] [4] [5] [6]OrganisationVariable
field in theregistry
struct to support organization-specific image naming. This is especially usefull when testing the build with a private registry where the organizational name isn't equal to the username username.Documentation updates:
README.md
: Updated references fromdocker-compose
todocker compose
and revised example environment variable values. [1] [2] [3]Other changes:
build.yaml
: Dropped build of versions which don't have arm64 binariescontainerssh-test-authconfig/Dockerfile
andcontainerssh/Dockerfile
: AddedTARGETOS
andTARGETARCH
arguments to support multi-platform builds. [1] [2] [3] [4]Organisational
Are you the owner of the code or do you have permission of the owner?
Yes
The code will be published under the MIT-0 license. Have you read and understood this license?
Yes