The contents of this directory are to be used in generating the various Docker images for use in XDMoD development. A few examples of typical use will be detailed below.
- Update the values in the
.envfile. The new values will be used when naming the new images as defined in theImage namessection near the bottom of that file. - Download the MariaDB RPMs with
./xdmod/get-mariadb-rpms.sh. - Create the images in the correct order, using
docker compose build <image_name>:xdmod-base.xdmod.xdmod-job-performanceandxdmod-ondemand.
- Push each image to the registry using
docker push <image_name>:<tag>. - Tag this
ccr-private-xdmodGit repo with a tag<xdmod_github_tag>-<image_release>, e.g.,v10.5.0-1.0-01.
This process is much the same as creating images for a new release of XDMoD but with some pre-requisite steps.
- Create a new subdirectory named after the module, e.g.,
xdmod-ondemand. - Add a new Dockerfile to that directory, e.g.,
<os>-<module-name>.dockerfile. - Add any supporting files that may be required to successfully build the new image.
- For instance,
xdmod-job-performanceincludes the following:- Additional
binfiles that help with handling the mongodb server / data / additional setup that is specific to this module. - Additional
assetsthat include configuration files that determine which version of mongodb to install as well as reference data that will be imported into a new installation to provide something to test against.
- Additional
- Add a corresponding
serviceentry todocker-compose.yamlso that it can be interacted with the same as the other docker images.
List the repositories:
curl https://tools-ext-01.ccr.xdmod.org/v2/_catalog
For a given repository (e.g., xdmod-ondemand), list the tags:
curl https://tools-ext-01.ccr.xdmod.org/v2/xdmod-ondemand/tags/list
For a given repository (e.g., xdmod-ondemand) and tag (rockylinux8.5-v10.5.0-1.0-01), list the manifest digest:
curl -sS -H 'Accept: application/vnd.docker.distribution.manifest.v2+json' -o /dev/null -w '%header{Docker-Content-Digest}' https://tools-ext-01.ccr.xdmod.org/v2/xdmod-ondemand/manifests/x86_64-rockylinux8.5-v10.5.0-1.0-01