Espace Wiki ∂'Alembert Espace Guide de survie du SysAdmin Espace Guide de survie du Développeur Espace Institut ∂’Alembert Le Site Aide PmWikiFr Help PmWiki |
Vous êtes dans un espace restreint en écriture. << Docker Compose | Docker | Docker Compose + Docker Registry >> Docker Registry est un serveur d'images Docker. InstallationLe plus simple est de lancer votre Docker Registry dans un conteneur Docker. Ici il sera sur localhost sur le port 5000 L’authentification, pour le moment, n'est pas activé. TODO: Registre via un proxy HTTPS avec déclaration dans le DNS
mkdir -p /docker/apps/registry/data
# mkdir -p /docker/compose/registry # cd /docker/compose/registry registry: restart: always image: registry:2 ports: - 5000:5000 volumes: - /docker/apps/registry/data:/var/lib/registry
docker-compose up -d
$ curl -i http://localhost:5000/v2/ HTTP/1.1 200 OK Content-Length: 2 Content-Type: application/json; charset=utf-8 Docker-Distribution-Api-Version: registry/2.0 Date: Thu, 24 Sep 2015 15:43:13 GMT En cas d’erreur (autre que 200) voir [1] Utilisation du Registryajout d'une imageCela se passe en 2 temps:
# docker tag wheezy localhost:5000/wheezy
# docker push localhost:5000/wheezy The push refers to a repository [localhost:5000/registry] (len: 1) 1e847b14150e: Image successfully pushed e024fb496e6b: Image already exists 6228a99f9630: Image already exists 76b7062ceb9a: Image already exists e4aee72fc6c3: Image successfully pushed a5b8dc690ce7: Image successfully pushed 5c3e6bcaa8b0: Image successfully pushed 91e54dfb1179: Image already exists d74508fb6632: Image successfully pushed c22013c84729: Image successfully pushed d3a1f33e8a5a: Image successfully pushed 2: digest: sha256:fa8c36728c5dc7e9ff8869c31ed21060744808630c0173a926a4668fda24fd6e size: 20579 Après un peu de temps, il rend la main Récuperation d'une imagePour etre sure que l'on utilise l'image du Registry, je vais supprimer l'image locale de wheezy # docker images REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE localhost:5000/wheezy latest 1f257bb69251 About an hour ago 226.2 MB wheezy latest 1f257bb69251 About an hour ago 226.2 MB # docker rmi -f 1f257bb69251 Untagged: localhost:5000/wheezy:latest Untagged: wheezy:latest Deleted: 1f257bb6925123585ec5356f14be1e25d434ea18ff3e19008ee108ba644972fe Je récupère l'image wheezy depuis le Registry: # docker pull localhost:5000/wheezy Using default tag: latest latest: Pulling from wheezy 1f257bb69251: Pull complete Digest: sha256:d7a178b2c613e63a1caf16810c948dbb9109f09507c2b47a9864f0289e61a358 Status: Downloaded newer image for localhost:5000/wheezy:latest HTTP APIL'API HTTP permet de manipuler le Registry. Nous allons nous contenter de lister les images et leurs tags
$ curl http://localhost:5000/v2/_catalog | python -mjson.tool { "repositories": [ "registry", "wheezy" ] }
$ curl http://localhost:5000/v2/wheezy/tags/list | python -mjson.tool { "name": "wheezy", "tags": [ "latest" ] } Mettre une image dans Registry
docker tag <image> localhost:5000/mon_image
docker push localhost:5000/mon_image Récuperer une image du Registrydocker pull localhost:5000/mon_image Liens Externes |