Containers
The Analytical Platform team offers a managed pipeline for building, scanning and pushing containers to a registry. This is done via GitHub Actions and is available to all teams. This is managed in Terraform.
Images are scanned for vulnerabilities using Trivy, currently with a default severity of CRITICAL
Dockerfiles are linted by the Super Linter with Hadolint
Creating a new container image repo
To create a new container image repo, clone the data-platform-github-access repository.
There are two files for creating repositories, one for Analytical Platform and another for Data Platform. See example below for creating an Analytical Platform container repo.
"analytical-platform-<container-name>" = { name = "analytical-platform-<container-name>" description = "Analytical Platform <container-name>" use_template = true template_repository = "analytical-platform-image-build-template" access = { admins = [module.analytical_platform_team.id] } }
As shown in example above, use the
template_repository = "analytical-platform-image-build-template"
argument. The template equips you with the default initial files for building a container used in Analytical Platform. The template repo can be viewed here.Update the Dockerfile, Makefile, container-structure-test.yml and any other files as required in your new container repo.
There is no longer a requirement for
config.json
orCHANGELOG.md
files.