Docker multiplatform build support#1974
Conversation
050c1c3 to
f8b613b
Compare
|
This was the initial implementation of the build job, but ended up taking very long. Over an hour to build an ARM build on the AMD build workers. Is there any chance you could test on a local repository how long the GitHub runners take to build the single image before this PR, and how long it would take to build all three? This does have the benefit of only building on releases, which I'm less worried about having long build times. However, would still enjoy specific timings before merging this in. |
Will report back. I'll add the time consuming build step only runs on one platform (amd64)! (so we won't be building on arm). The multiplatform build step will be taking the amd64 build files and putting them in crossplatform supported nginx containers. |
|
Oh, that's actually a really cool solution. Never mind then, the previous implementation also built on every other platform, which was incredibly slow. This seems far better. Don't worry about timing it, I'll be happy to test it out when I get time. |
|
I had triggered a release last week. However it seems the CI OS image You might have similar issues on the next release. https://github.com/PathToLife/CyberChef/actions/runs/13350228747/job/37285773548 |
|
I was hoping this PR had fixed this issue, which made it into mainline around a month ago: |
Looks like releases.yml is missing that change. I'll apply it and give it a go. CyberChef/.github/workflows/releases.yml Lines 26 to 29 in d3357d2 |
…able NPM Publish for testing
22007ef to
b85036b
Compare
|
Is there a reason we are using buildah? I'd recommend using docker buildx in the CI step as it's more simple. If we want to stick with buildah, it might be better to manually generate tags per arch, and then merge them together to a docker pullable manifest. Manifest comparison redhat-actions/buildah-build vs docker buildxUser docker pull experienceIt's not ideal as standard pull on arm64 server fails |
|
No reason we're using |
|
@a3957273 just noticed that NPM publish CI step is set to false as my fork didn’t have NPM release configured. might want to verify NPM step is active by removing the ‘if’ statement. Thanks for the reply about buildx - I’ll take a look later when I have the time :) |
|
Fix #1912 |


Adds multiplatform docker support for arm64 and armv7 architectures. Power efficient.. hopefully🔋🌲
Github workflow will need a test. However working locally with docker buildx and test image has been published below.
pathtolife/cyberchef:v10.19.4https://hub.docker.com/r/pathtolife/cyberchef/tags
Command to run and remove on stop (--rm)
docker run --rm -p 8080:80 pathtolife/cyberchef:v10.19.4Thanks!