Actually, the container.image property is a string one: link.
The goal here is to convert it to object and expose three sub-properties:
registry: hostname server from where the OCI image must be pulled (default value: docker.io)
name: the image name (default value: djaytan/papermc-server)
tag: the image tag (default value: latest)
digest: the checksum for integrity check (default value: none)
This way, as a user, I can just override the tag without bothering about anything else, thus keeping an override config concise and simple:
container:
image:
tag: '1.21.4-v2.11'
digest: 'sha256:7136fadbae3f4acf8c4f470d047516af0fda4f3298de85aa14f7b9f8347019fe'
=> Principal: convention over configuration.
Alternatively, or complementary, I can as well create my own custom OCI image based on the Djaytan's one while still using this Helm chart:
container:
image:
registry: ghcr.io
name: my-org/my-repo
tag: latest
Or I may need to override specifically the registry in order to rely on a mirror to avoid facing Docker Hub rate limits:
container.image.registry: my-mirror.io
Actually, the
container.imageproperty is astringone: link.The goal here is to convert it to
objectand expose three sub-properties:registry: hostname server from where the OCI image must be pulled (default value:docker.io)name: the image name (default value:djaytan/papermc-server)tag: the image tag (default value:latest)digest: the checksum for integrity check (default value: none)This way, as a user, I can just override the tag without bothering about anything else, thus keeping an override config concise and simple:
=> Principal: convention over configuration.
Alternatively, or complementary, I can as well create my own custom OCI image based on the Djaytan's one while still using this Helm chart:
Or I may need to override specifically the registry in order to rely on a mirror to avoid facing Docker Hub rate limits: