Încerc să configurez Harbour ca un registru pull-through legat de hub-ul Docker.
În timp ce reușesc să trag imagini prefixându-le conform doc, nu o pot face să funcționeze folosind registru-oglinzi
Parametrul demonului Docker: comenzi precum docker pull mysql
încă descărcați straturile de pe docker.io.
Configurare client
Versiunea Docker: 20.10.8
/etc/docker/daemon.log:
{
„registry-mirrors”: [„https://harbor.example.com”]
}
Configurare port
- Harbour v2.3.1
- Instalat folosind
docker-compune
- În interfața Harbour:
- Registre \ Punct final nou: Punct final creat cu „Docker Hub” ca furnizor.
- Proiecte \ Proiect nou: Setați numele la
proxy
, bifați „Proxy Cache” și selectați punctul final de mai sus.
Testul 1: Trage imaginea cu prefix:
$ docker pull harbor.example.com/proxy/library/mysql
Utilizarea etichetei implicite: cel mai recent
cel mai recent: extragerea din proxy/bibliotecă/mysql
33847f680f63: există deja
5cb67864e624: Există deja
1a2b594783f5: există deja
b30e406dd925: Există deja
48901e306e4c: există deja
603d2b7147fd: Există deja
802aa684c1c4: există deja
715d3c143a06: Trage complet
6978e1b7a511: Trage complet
f0d78b0ac1be: Trage complet
35a94d251ed1: Trage complet
36f75719b1a9: Trage complet
Digest: sha256:8b928a5117cf5c2238c7a09cd28c2e801ac98f91c3f8203a8938ae51f14700fd
Stare: S-a descărcat o imagine mai nouă pentru harbor.example.com/proxy/library/mysql:latest
harbour.example.com/proxy/library/mysql:latest
A doua ultima linie arată că acest lucru este extras din repo-ul meu așa cum era de așteptat.
Testul 2: Trage imaginea fără prefix:
$ docker pull mysql
Utilizarea etichetei implicite: cel mai recent
cel mai recent: extragerea din bibliotecă/mysql
33847f680f63: există deja
5cb67864e624: Există deja
1a2b594783f5: există deja
b30e406dd925: Există deja
48901e306e4c: există deja
603d2b7147fd: Există deja
802aa684c1c4: există deja
715d3c143a06: Trage complet
6978e1b7a511: Trage complet
f0d78b0ac1be: Trage complet
35a94d251ed1: Trage complet
36f75719b1a9: Trage complet
Digest: sha256:8b928a5117cf5c2238c7a09cd28c2e801ac98f91c3f8203a8938ae51f14700fd
Stare: S-a descărcat o imagine mai nouă pentru mysql:latest
docker.io/library/mysql:latest
Acesta vine de la docker.io în loc să-l ia din registry! După comanda de mai sus, văd și această linie în /var/log/syslog:
11 august 15:54:57 myhost dockerd[12663]: time="2021-08-11T15:54:57.229516951+02:00" level=info msg="Se încearcă următorul punct final pentru extragere după eroare: necunoscut: bibliotecă de depozit/mysql nu a fost gasit"
Deoarece acest lucru sugerează că Docker a încercat mai întâi registrul meu, bănuiesc că problema este în configurația registrului și nu în Docker. Poate că în convențiile de cale folosite de Harbour...
A reușit cineva să extragă imagini dintr-un cache Harbour fără a fi nevoie să le prefixeze manual?