Ho letto molte esercitazioni su come configurare e utilizzare il mio registro personale di docker.Perché il tag sembra essere strettamente associato al nome host del registro?
Una cosa che mi ha bloccato è il fatto che il tag con cui sto taggando l'immagine, sembra essere strettamente associato al nome host del registro.
docker tag <imageid> registry.mycompany.com:5000/myrepo:tag
docker push registry.mycompany.com:5000/myrepo:tag
Questo sembra davvero contro-intuitivo. Cosa succede se il registro deve spostarsi su un nome host diverso? O se sto usando nomi di host diversi indipendentemente dal fatto che sto accedendo o meno al server internamente/esternamente?
Ciò che sembra più intuitivo per me sarebbe quella di specificare il Registro di sistema quando spingere/tirare:
docker tag <imageid> myrepo:tag
docker push myrepo:tag --registry=registry.mycompany.com
docker pull myrepo:tag --registry=registry.mycompnay.com
Qual è la logica per questo? Quale bit di informazione chiave mi manca?
Non seguo: l'URL * è * parte del nome. Se è cambiato/rimosso, ci si riferisce (probabilmente) a un'immagine diversa. –
@AdrianMouat che parte del nome è per 'docker push' per sapere quale server deve contattare. La seconda parte non dovrebbe cambiare (anche se ': latest' è sempre un po 'pericoloso e potrebbe non riferirsi alla stessa immagine da un server a un altro). Se il tuo server di registro è memorizzato in una variabile di ambiente, puoi facilmente riutilizzare la stessa espressione su un altro server '$ {registryname}/myrepo: tag'. – VonC
'tag docker ubuntu $ {registryname}/ubuntu' non funziona. Il client docker non consente questo tipo di denominazione – shayy