Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enable multi-platform build #1

Open
christian-kreuzberger-dtx opened this issue Feb 2, 2021 · 2 comments
Open

Enable multi-platform build #1

christian-kreuzberger-dtx opened this issue Feb 2, 2021 · 2 comments

Comments

@christian-kreuzberger-dtx
Copy link
Member

christian-kreuzberger-dtx commented Feb 2, 2021

If we ever want to build for raspberry PI or any other non amd64 based platform, we should enable buildx.

One way to achieve this would be by using the following workflow:

        name: Set up QEMU
        uses: docker/setup-qemu-action@v1
      -
        name: Set up Docker Buildx
        uses: docker/setup-buildx-action@v1
      -
        name: Login to DockerHub
        uses: docker/login-action@v1 
        with:
          username: ${{ secrets.DOCKERHUB_USERNAME }}
          password: ${{ secrets.DOCKERHUB_TOKEN }}
      -
        name: Build and push
        uses: docker/build-push-action@v2
        with:
          context: .
          file: ./Dockerfile
          platforms: linux/386,linux/amd64,linux/arm/v6,linux/arm/v7,linux/arm64,linux/ppc64le,linux/s390x
          push: true
          tags: |
            user/app:latest
            user/app:1.0.0

Alternatively, instead of using the docker/build-push-action, we can do the same via docker buildx build --platform ....

@christian-kreuzberger-dtx
Copy link
Member Author

FYI, for Keptn we should try to reduce the number of platforms to a bare minimum, e.g.:
linux/amd64 + linux/arm64 (and maybe linux/arm/v7 for raspberry pi 3)

@christian-kreuzberger-dtx
Copy link
Member Author

Tried it... was super slow (more than 5 times slower by just adding arm64 and arm/v7). I'm putting this on hold for now.

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 a pull request may close this issue.

1 participant