Ou héberger les images de ses containers ?

Et bien jusqu'à hier, je vous aurais répondu, sur le hub docker ! Simple, gratuit efficace. Si vous avez besoin d'un espace privé, c'est possible ! Toutes les infos sont disponible sur le site officiel du hub docker

Oui mais voilà, vous n'avez le droit, de façon gratuite qu'à un repository privé et un répository public. Si vous avez de nombreux projets et besoin de plus de répository, et bien il va falloir mettre la main à la poche :

Un nouvel arrivant

Et bien aujourd'hui, je peux vous dire qu'il y a une alternative à cela. Le docker hub est très bien mais on ne sait jamais ce qu'il peut arriver à nos très chères données, qui plus est nos images docker ! Il y a bien la possiblité de gérer notre propre repository (comme le montre ce tutp de Digital Ocean)

Si vous arrivez à aller jusqu'à l'étape 11, c'est gagné vous avez votre répository personnel que vous allez pouvoir administré...

Mais...
Ce n'est pas très simple, pas facile d'accès et surtout, il faudra le maintenir.

Et bien maintenant, OVH se lance dans cette aventure avec un programme (Beta pour le momént) nommé Ovh Docker Registry :

Là pour le coup, c'est simple et façile ! Pour le moment, comme c'est une Bêta, c'est gratuit, mais il y a fort à parier que les tarifs seront très attractifs.

Ovh Docker Registry

A quoi cela ressemble-t-il ?

Fonctionnalités

Et bien déjà, cela inclut toutes les fonctionnalités les plus courrantes et les plus demandée (j'imagine) pour un repository :

On peut donc gérer les droits d'accès aux images avec 4 grands rôles :
1- Lecture seule
2- Lecture/écriture
3- Privé
4- Public

Parfait ! Juste ce dont n'importe quel organisation à besoin !

Mode d'emploi

Comment cela s'utilise-t-il ?
Voici le résumé du guide d'utilisation :

Pour refaire le guide, voici la marche à suivre :
1- s'incrire au programe bêta

2- une fois le registry créé (vous recevez un mail), allez sur votre Manager dans la rubrique SUNRISE

3- créer un utilisateur, il ne vous sera demandé que la description (login et mot de passe seront générés automatiquement par le système) :

4- créer un namespace, attention tout en minuscule :

5- associer un utilisateur au namespace créé :

Et voilà, votre registry/repository est prêt à fonctionner !

Envoyer vos images

Pour envoyer vos images, rien de plus simple, 3 commandes sont à effectuer :
1- docker login -u _VOTRE-IDENTIFIANT_ -p _VOTRE-MOT-DE-PASSE_ registry.containers.ovh.net

1bis- docker pull "votre image" : cette étape n'est pas forcément nécessaire si votre image est déjà sur votre système (dans le cas d'un build avec un Dockerfile par exemple)

2- docker tag "le tag de votre image" registry.containers.ovh.net/dockerovh/NOM-DE-VOTRE-IMAGE

3- docker push registry.containers.ovh.net/dockerovh/NOM-DE-VOTRE-IMAGE

et 1 ou 2 minutes plus tard, votre image est disponible sur le registry.
J'ai fait deux tests avec les images nginx et jlrigau/cmatrix sur mon registry sobrement appelé dockerovh :

Gérer les permissions de vos images

Maintenant que vous avez mis en ligne vos images, il est possible de gérer les permissions d'accès et d'écriture sur celles-ci :

Par défault, le namespace est privé (Private). Vous pouvez donc le basculer public si vous le souhaitez. Ainsi tout le monde pourra effectuer un pull de vos images dans restrictions !


Vous pouvez maintenant, par exemple, lancer l'image du conteneur cmatrix via la commande docker run -ti dockerovh/cmatrix cmatrix et vous aurez un joli écran à la matrix qui se lancera :

Sinon, vous pouvez ajouter des permissions en lecture sur une image en particulier en créer un nouvel utilisateur et en lui assignant les droits lecture :

Permissions sur le namespace ainsi que sur l'image !
Plutôt fournies comme options !

Voilà, vous avez maintenant les clés en main pour gérer vos propres registries / répositories via OVH, d'une façon simple et efficace !

Cette béta est ouverte depuis le 16 janvier alors profitez-en pour tester ce nouveau service OVH.

[Edit du 20/02/2017]
La bêta ne fonctionne qu'un mois et qu'une fois par compte !

PS : j'ai un peu de mal avec l'authentification docker login sous windows. Les tests d'envoie ont été effectués à partir de mon VPS de dev hébérgé par OVH. Cela m'a permit de gagner du temps car la bande passante est plus importante que celle dont je dispose à la maison.

A+
Tony B.