[scl.org] Image naming for centos-based images

Michal Fojtik mfojtik at redhat.com
Fri Oct 2 11:54:36 UTC 2015

On Fri, Oct 2, 2015 at 12:16 PM, Honza Horak <hhorak at redhat.com> wrote:

> This is a follow-up for the meeting we had yesterday and which there are
> minutes from at:
> https://lists.fedoraproject.org/pipermail/env-and-stacks/2015-October/000946.html
> One thing that we couldn't solve without any OpenShift representative was
> naming scheme for the centos images, that are based on SCL packages. Those
> were originally called (mysql chosen as example):
>   openshift/mysql-55-rhel7
>   openshift/mysql-55-centos7
> the new versions are located under rhscl (RH internal registry) and centos
> (docker hub) namespaces (variant A):
>   rhscl/mariadb-100-rhel7
>   centos/mariadb-100-centos7

Any reason to have "mariadb-100" and not "mariadb-10" ? Are you planning to
release mariadb-101 collection?

> What we were thinking about yesterday was this scheme (variant B):
>   rhscl/mariadb-100-rhel7
>   centos/mariadb:10.0
> Reasoning for shorter/simpler naming (variant B):
> * we want to hide the fact that image is using SCL, so there is no need to
> distinguish between SCL and non-SCL images
> * there doesn't seem to be a reason to have more variants of one component
> in the image (if there will be in the future, the name itself should be
> different)
> * image name should be simple for users
> * it is a benefit to use the same scheme as on docker hub
> * distribution version underneath is usually irrelevant (except some
> specific cases, like some base libraries; anyway it won't be good enough
> reason to provide two variants of images just for the sake of different
> libraries underneath), so the -centos7 suffix is not necessary
> However, after talking to Ben from OpenShift there are actually some
> arguments for using distro version and also version in the name (variant A):
> * Ben claimed the distribution underneath is actually important, because
> of kernel. Once there is centos8-based image, it might or might not run on
> centos7 machine. Whether this happens in reality or not, we should at least
> have a backdoor how to fix it.
> * version in the image name instead of just tag is handy for the cases
> where we want to work with :latest tag (used quite a lot in docker world,
> default behaviour)
> * no version in the image name also means that if users don't use tags,
> they will upgrade to newer version once new version is out (which e.g. in
> case of mysql 5.6 to 5.7 upgrade can cause troubles).
> * since RH internal naming is not expected to be changed, the new
> suggested variant will be more confusing for users, since they won't
> understand that rhscl/mysql-56-rhel7 is the same image as centos/mysql:5.6.
> * Ben also mentioned users haven't had problems with image naming so far
> Since there is no ideal solution, we may consider also some compromise,
> like:
>   centos/mysql-56
> ..and have tags for the distribution (centos7) same as centos base image
> has, which would be a solution for the case distribution would matter once
> in the future.
> The general rule for the image name in the centos would be:
>   use <pkgname> for cases where version of the image doesn't care
>   use <pkgname>-<majorversion> for cases where version of the image
> matters, where it is expected that users will require a specific version of
> the image and upgrading to a newer version must be always under their
> control.
> What do you think?
> Honza
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/sclorg/attachments/20151002/a13e1df2/attachment.htm>

More information about the SCLorg mailing list