Docker Image Style
Use only well maintained images FROM a trusted registry
We trust "Docker" and "ourselves". As a consequence, you can pull images from hub.docker.com, docker.io or quay.io.
Image names and versions
-
Image names should not contain version info "in themselves".
Example: There is no
mysql4:1.0orubuntu14:0.4but onlymysql:4.x.xandubuntu:14.0.4 -
you MUST use
latestonly with the most recent STABLE version (not necessarily the latest being build).Example:
php:latest -
container:major - this is for a specific version/featureset.
Example:
php:4,php:5 -
container:major.minor - this is for a specific (compatible) version with a compatible featureset
Example:
mysql:5.6,mysql:5.7 -
container:major.minor.patch - this is/must be EXACTLY THE current container. If anybody needs THIS container he has to use this tag.
Example:
mysql:5.6.28,mysql:5.7.10
Adding information to version
Examples:
php:5.6.17-cliIt is IDENTICAL to php:5.6.17 and so the defaultphp:5.6.17-apacheIt is an php container installation that provides the apache webserver WITH phpphp:5.6.17-fpmIt is an php container that can be used with nginx (FPM=FastCGI Process Manager)
Building Multi-Architecture Images
You SHOULD build images for amd64 and arm64 architectures at least.
Follows this article.