From b2fbd88909ca37cbdff96d4b2fbc57065860b196 Mon Sep 17 00:00:00 2001 From: Kwabena Amponsah Date: Fri, 22 May 2026 11:46:08 +0100 Subject: [PATCH 1/5] Add multiarch github action for chaste-libs --- .github/workflows/docker-chaste-libs.yml | 47 +++++++++++------------- appredict-chaste-libs/Dockerfile | 2 + 2 files changed, 23 insertions(+), 26 deletions(-) diff --git a/.github/workflows/docker-chaste-libs.yml b/.github/workflows/docker-chaste-libs.yml index 97db1ee..3806e56 100644 --- a/.github/workflows/docker-chaste-libs.yml +++ b/.github/workflows/docker-chaste-libs.yml @@ -3,32 +3,27 @@ name: docker-chaste-libs on: workflow_dispatch: -jobs: - docker: - runs-on: ubuntu-latest - - steps: - - name: Checkout - uses: actions/checkout@v4 - - - name: Set up QEMU - uses: docker/setup-qemu-action@v3 +permissions: + contents: read - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v3 - - - name: Login to Docker Hub - uses: docker/login-action@v3 - with: +jobs: + build: + uses: docker/github-builder/.github/workflows/build.yml@v1 + permissions: + contents: read + id-token: write + with: + context: ./appredict-chaste-libs/ + output: image + push: true + platforms: linux/amd64,linux/arm64 + distribute: true + sign: auto + meta-images: cardiacmodelling/appredict-chaste-libs + meta-tags: | + type=semver,pattern={{version}},value=2.0.0 + secrets: + registry-auths: | + - registry: docker.io username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - - - name: Build and push - uses: docker/build-push-action@v6 - with: - context: ./appredict-chaste-libs/ - pull: true - push: true - tags: | - cardiacmodelling/appredict-chaste-libs:2.0.0 - cardiacmodelling/appredict-chaste-libs:latest diff --git a/appredict-chaste-libs/Dockerfile b/appredict-chaste-libs/Dockerfile index c419349..0b927f2 100644 --- a/appredict-chaste-libs/Dockerfile +++ b/appredict-chaste-libs/Dockerfile @@ -1,5 +1,7 @@ FROM debian:bullseye-slim +LABEL version="2.0.0" + USER root RUN echo "deb http://deb.debian.org/debian bullseye main contrib non-free" >> /etc/apt/sources.list From 638d132857d935a9bf375edf8c05a3102a67421c Mon Sep 17 00:00:00 2001 From: Kwabena Amponsah Date: Fri, 22 May 2026 13:21:07 +0100 Subject: [PATCH 2/5] Add multiarch github action for no-emulators --- .github/workflows/docker-no-emulators.yml | 55 +++++++++++------------ appredict-no-emulators/Dockerfile | 2 + 2 files changed, 27 insertions(+), 30 deletions(-) diff --git a/.github/workflows/docker-no-emulators.yml b/.github/workflows/docker-no-emulators.yml index 3b37d51..f01920a 100644 --- a/.github/workflows/docker-no-emulators.yml +++ b/.github/workflows/docker-no-emulators.yml @@ -3,36 +3,31 @@ name: docker-no-emulators on: workflow_dispatch: -jobs: - docker: - runs-on: ubuntu-latest - - steps: - - name: Checkout - uses: actions/checkout@v4 - - - name: Set up QEMU - uses: docker/setup-qemu-action@v3 +permissions: + contents: read - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v3 - - - name: Login to Docker Hub - uses: docker/login-action@v3 - with: +jobs: + build: + uses: docker/github-builder/.github/workflows/build.yml@v1 + permissions: + contents: read + id-token: write + with: + context: ./appredict-no-emulators/ + build-args: | + appredict_tag=v2024.1 + chaste_tag=2024.1 + build_processors=4 + output: image + push: true + platforms: linux/amd64,linux/arm64 + distribute: true + sign: auto + meta-images: cardiacmodelling/appredict-no-emulators + meta-tags: | + type=semver,pattern={{version}},value=2.0.0 + secrets: + registry-auths: | + - registry: docker.io username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - - - name: Build and push - uses: docker/build-push-action@v6 - with: - context: ./appredict-no-emulators/ - pull: true - push: true - build-args: | - appredict_tag=v2024.1 - chaste_tag=2024.1 - build_processors=4 - tags: | - cardiacmodelling/appredict-no-emulators:2.0.0 - cardiacmodelling/appredict-no-emulators:latest diff --git a/appredict-no-emulators/Dockerfile b/appredict-no-emulators/Dockerfile index 0f943e5..820800a 100644 --- a/appredict-no-emulators/Dockerfile +++ b/appredict-no-emulators/Dockerfile @@ -1,5 +1,7 @@ FROM cardiacmodelling/appredict-chaste-libs:2.0.0 +LABEL version="2.0.0" + ################################################################################ # Modifiable (e.g. via command line) args. # ################################################################################ From bbe4c9d6cc1486abed5e24068f634f7a7d8ef1b0 Mon Sep 17 00:00:00 2001 From: Kwabena Amponsah Date: Fri, 22 May 2026 13:21:16 +0100 Subject: [PATCH 3/5] Add multiarch github action for with-emulators --- .github/workflows/docker-with-emulators.yml | 51 ++++++++++----------- appredict-with-emulators/Dockerfile | 2 + 2 files changed, 25 insertions(+), 28 deletions(-) diff --git a/.github/workflows/docker-with-emulators.yml b/.github/workflows/docker-with-emulators.yml index c43506f..e6addd4 100644 --- a/.github/workflows/docker-with-emulators.yml +++ b/.github/workflows/docker-with-emulators.yml @@ -3,34 +3,29 @@ name: docker-with-emulators on: workflow_dispatch: -jobs: - docker: - runs-on: ubuntu-latest - - steps: - - name: Checkout - uses: actions/checkout@v4 - - - name: Set up QEMU - uses: docker/setup-qemu-action@v3 +permissions: + contents: read - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v3 - - - name: Login to Docker Hub - uses: docker/login-action@v3 - with: +jobs: + build: + uses: docker/github-builder/.github/workflows/build.yml@v1 + permissions: + contents: read + id-token: write + with: + context: ./appredict-with-emulators/ + build-args: | + build_processors=4 + output: image + push: true + platforms: linux/amd64,linux/arm64 + distribute: true + sign: auto + meta-images: cardiacmodelling/appredict-with-emulators + meta-tags: | + type=semver,pattern={{version}},value=2.0.0 + secrets: + registry-auths: | + - registry: docker.io username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - - - name: Build and push - uses: docker/build-push-action@v6 - with: - context: ./appredict-with-emulators/ - pull: true - push: true - build-args: | - build_processors=4 - tags: | - cardiacmodelling/appredict-with-emulators:2.0.0 - cardiacmodelling/appredict-with-emulators:latest diff --git a/appredict-with-emulators/Dockerfile b/appredict-with-emulators/Dockerfile index e4db6a6..6acb828 100644 --- a/appredict-with-emulators/Dockerfile +++ b/appredict-with-emulators/Dockerfile @@ -1,5 +1,7 @@ FROM cardiacmodelling/appredict-no-emulators:2.0.0 +LABEL version="2.0.0" + ################################################################################ # Modifiable (e.g. via command line) args. # ################################################################################ From 95e3f2163033f0a2d819add2585e54c0d97a6c2f Mon Sep 17 00:00:00 2001 From: Kwabena Amponsah Date: Fri, 22 May 2026 14:04:28 +0100 Subject: [PATCH 4/5] Add docker build comments --- appredict-chaste-libs/Dockerfile | 7 +++++++ appredict-no-emulators/Dockerfile | 7 +++++++ appredict-with-emulators/Dockerfile | 7 +++++++ 3 files changed, 21 insertions(+) diff --git a/appredict-chaste-libs/Dockerfile b/appredict-chaste-libs/Dockerfile index 0b927f2..59df52a 100644 --- a/appredict-chaste-libs/Dockerfile +++ b/appredict-chaste-libs/Dockerfile @@ -1,3 +1,10 @@ +# Building the image locally: +# cd appredict-chaste-libs +# docker build -t cardiacmodelling/appredict-chaste-libs:local . + +# Starting a container interactively: +# docker run --init -it cardiacmodelling/appredict-chaste-libs:local /bin/bash + FROM debian:bullseye-slim LABEL version="2.0.0" diff --git a/appredict-no-emulators/Dockerfile b/appredict-no-emulators/Dockerfile index 820800a..d0eba1f 100644 --- a/appredict-no-emulators/Dockerfile +++ b/appredict-no-emulators/Dockerfile @@ -1,3 +1,10 @@ +# Building the image locally: +# cd appredict-no-emulators +# docker build -t cardiacmodelling/appredict-no-emulators:local . + +# Starting a container interactively: +# docker run --init -it cardiacmodelling/appredict-no-emulators:local /bin/bash + FROM cardiacmodelling/appredict-chaste-libs:2.0.0 LABEL version="2.0.0" diff --git a/appredict-with-emulators/Dockerfile b/appredict-with-emulators/Dockerfile index 6acb828..c55211b 100644 --- a/appredict-with-emulators/Dockerfile +++ b/appredict-with-emulators/Dockerfile @@ -1,3 +1,10 @@ +# Building the image locally: +# cd appredict-with-emulators +# docker build -t cardiacmodelling/appredict-with-emulators:local . + +# Starting a container interactively: +# docker run --init -it cardiacmodelling/appredict-with-emulators:local /bin/bash + FROM cardiacmodelling/appredict-no-emulators:2.0.0 LABEL version="2.0.0" From c9b78fc5ac2336520f5132645b5284fe52620c3c Mon Sep 17 00:00:00 2001 From: Kwabena Amponsah Date: Fri, 22 May 2026 14:26:25 +0100 Subject: [PATCH 5/5] Add .gitignore --- .gitignore | 1 + 1 file changed, 1 insertion(+) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e43b0f9 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.DS_Store