4.2. Accès au registre directement à partir du cluster
Vous pouvez accéder au registre depuis l'intérieur du cluster.
Procédure
Accédez au registre depuis le cluster en utilisant des routes internes :
Accéder au nœud en obtenant son nom :
oc get nodes
$ oc get nodes
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc debug nodes/<node_name>
$ oc debug nodes/<node_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Pour permettre l'accès à des outils tels que
oc
etpodman
sur le nœud, changez votre répertoire racine en/host
:chroot /host
sh-4.2# chroot /host
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Connectez-vous au registre des images de conteneurs en utilisant votre jeton d'accès :
oc login -u kubeadmin -p <mot_de_passe_du_log_d'installation> https://api-int.<cluster_name>.<base_domain>:6443
sh-4.2# oc login -u kubeadmin -p <mot_de_passe_du_log_d'installation> https://api-int.<cluster_name>.<base_domain>:6443
Copy to Clipboard Copied! Toggle word wrap Toggle overflow podman login -u kubeadmin -p $(oc whoami -t) image-registry.openshift-image-registry.svc:5000
sh-4.2# podman login -u kubeadmin -p $(oc whoami -t) image-registry.openshift-image-registry.svc:5000
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Un message de confirmation de la connexion devrait s'afficher, comme par exemple :
Login Succeeded!
Login Succeeded!
Copy to Clipboard Copied! Toggle word wrap Toggle overflow NoteVous pouvez indiquer n'importe quelle valeur pour le nom d'utilisateur ; le jeton contient toutes les informations nécessaires. La transmission d'un nom d'utilisateur contenant des deux-points entraînera un échec de la connexion.
Étant donné que c'est l'opérateur du registre des images qui crée l'itinéraire, celui-ci sera probablement similaire à
default-route-openshift-image-registry.<cluster_name>
.Effectuez les opérations
podman pull
etpodman push
sur votre registre :ImportantVous pouvez extraire des images arbitraires, mais si vous avez ajouté le rôle system:registry, vous ne pouvez que pousser des images vers le registre de votre projet.
Dans les exemples suivants, utilisez :
Expand Composant Valeur <registry_ip>
172.30.124.220
<port>
5000
<project>
openshift
<image>
image
<tag>
omis (par défaut
latest
)Tirer une image arbitraire :
podman pull <name.io>/<image>
sh-4.2# podman pull <name.io>/<image>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Marquez la nouvelle image avec la forme
<registry_ip>:<port>/<project>/<image>
. Le nom du projet doit apparaître dans cette spécification d'extraction pour que OpenShift Container Platform place correctement l'image dans le registre et y accède ultérieurement :podman tag <name.io>/<image> image-registry.openshift-image-registry.svc:5000/openshift/<image>
sh-4.2# podman tag <name.io>/<image> image-registry.openshift-image-registry.svc:5000/openshift/<image>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow NoteVous devez avoir le rôle
system:image-builder
pour le projet spécifié, qui permet à l'utilisateur d'écrire ou de pousser une image. Dans le cas contraire, la commandepodman push
de l'étape suivante échouera. Pour tester, vous pouvez créer un nouveau projet pour pousser l'image.Transférez l'image nouvellement étiquetée dans votre registre :
podman push image-registry.openshift-image-registry.svc:5000/openshift/<image>
sh-4.2# podman push image-registry.openshift-image-registry.svc:5000/openshift/<image>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow