Skip to content

Add GitHub workflow for multi-platform builds#282

Open
thaddeuskkr wants to merge 1 commit intoPhineas:mainfrom
thaddeuskkr:main
Open

Add GitHub workflow for multi-platform builds#282
thaddeuskkr wants to merge 1 commit intoPhineas:mainfrom
thaddeuskkr:main

Conversation

@thaddeuskkr
Copy link
Copy Markdown

This PR is an updated version of #258 (my own previous PR). The self-hosted version of Lanyard currently only runs on amd64 servers. This PR adds multi-platform builds using GitHub-hosted runners, which allows Lanyard to be self-hosted on a wider variety of servers, especially as ARM increases in popularity. It specifically targets the following platforms, but more can be added in the future:

  • linux/amd64
  • linux/arm64

This PR should be able to be merged without any additional changes to the repository - it uses the existing Docker secrets that are already used in the previous version of the workflow.

I've tested the build process on my own branch, this can be found here. Additionally, I'm running the ARM64 container on my own instance of Lanyard (available here).

Merging this PR also resolves #244.

Docker Hub Images: https://hub.docker.com/r/thadkkr/lanyard

image

Signed-off-by: Thaddeus Kuah <tk@tkkr.dev>
Copilot AI review requested due to automatic review settings March 30, 2026 14:31
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a new GitHub Actions workflow intended to build and publish multi-platform Docker images (amd64 + arm64) for Lanyard, replacing the existing single-arch Docker workflows.

Changes:

  • Introduces a docker-bake.hcl configuration with targets for local and multi-platform builds.
  • Adds a new consolidated workflow (.github/workflows/docker.yml) that builds per-platform images and merges them into a multi-arch manifest.
  • Removes the previous Docker build/push workflows (docker-image.yml, docker-build.yml).

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 2 comments.

File Description
docker-bake.hcl Adds bake targets for local and multi-platform builds.
.github/workflows/docker.yml New CI workflow for building/pushing per-platform images and creating a manifest list.
.github/workflows/docker-image.yml Removes prior push-on-main workflow.
.github/workflows/docker-build.yml Removes prior PR build workflow.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread .github/workflows/docker.yml
Comment thread docker-bake.hcl
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Self-hosting] aarch64 support

2 participants