I recommend that instead of distributing Dockerfiles, you distribute Docker images: You can add a GitHub action which, upon creation of a release branch, builds a Dockerfile and pushes the resultant image into the GitHub Docker registry, tagged according to the release branch. Users would then use docker pull to get the prebuilt image. Doing this will help ensure reproducibility of computational results as well as speeding things up (since users will not have to build images). Here's an example of a GitHub workflow that builds a Dockerfile upon creation of a release branch:
https://github.com/brucehoff/scheduled-job-example/blob/main/.github/workflows/docker_release.yml
The embedded comments link back to GitHub's doc's where further guidance can be found.
I recommend that instead of distributing Dockerfiles, you distribute Docker images: You can add a GitHub action which, upon creation of a release branch, builds a Dockerfile and pushes the resultant image into the GitHub Docker registry, tagged according to the release branch. Users would then use
docker pull
to get the prebuilt image. Doing this will help ensure reproducibility of computational results as well as speeding things up (since users will not have to build images). Here's an example of a GitHub workflow that builds a Dockerfile upon creation of a release branch: https://github.com/brucehoff/scheduled-job-example/blob/main/.github/workflows/docker_release.yml The embedded comments link back to GitHub's doc's where further guidance can be found.