solidnerd/docker-bookstack

Multi arch images?

Closed this issue · 2 comments

I want to set up and PR building multi-arch images in the github workflows for this repo. I'm running bookstack using this image in an arm based kubernetes cluster and currently I build the images manually. I've tried working around this validation step:

e2e:
    runs-on: ubuntu-latest
    needs: build
    steps:
    - name: Checkout
      uses: actions/checkout@v3

    - name: Download artifact
      uses: actions/download-artifact@v3
      with:
        name: image-bookstack-master
        path: /tmp

    - name: Load Docker image
      run: |
        docker load --input /tmp/image-bookstack.tar
        docker image ls -a

It seems that the docker build push action can output an oci multi-arch image tarball, but docker cannot load or import it. So rewrote this step with containerd and things started to get complicated. Ultimately I think, why does this repo need this? So can someone please explain why there is this three step process for building the image where the verification step is to see if docker can load an image that docker built. Has there been an issue with loading images built in the past? I don't understand why this needs to be done. If we eliminate this e2e job, multi-arch images become easy.

I suspect the e2e step missing from the HEAD of master and from releases is actually an artifact from when the actions were set up; it makes more sense for the e2e step to run before releases and/or before updates to master. It's also a requirement for the PR workflow, and I have no intentions of removing it from there, as it's caught a couple of issues where the container image hasn't built correctly.

It looks like it might be a practical intermediate to create, upload (and download), and test multiple .tar images (for each final architecture), or even to test on a single arch (likely amd64) and re-build the final image multiarch before pushing to registries.

I'd prefer the former over the latter, and would welcome any pull requests.

stale commented

This issue has been automatically marked as stale because it has not had any activity for the last 30 days. It will be closed if no further activity occurs during the next 7 days. Thank you for your contributions.