Linux4Ever

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
container:docker:start [2025/12/22 13:04] sbornecontainer:docker:start [2026/01/09 09:11] (aktuell) sborne
Zeile 16: Zeile 16:
  
 </code> </code>
- 
- 
- 
- 
- 
- 
  
 ====== Debmirror ====== ====== Debmirror ======
Zeile 66: Zeile 60:
  
 </code> </code>
- 
- 
- 
- 
- 
- 
  
 ====== Harbor als Proxy ====== ====== Harbor als Proxy ======
  
 Sollte ein [[:container:harbor:start|Harbor]] als Registrierung vorhanden sein (sehr hilfreich in Umgebungen ohne direkten Internetzugang), gibt es die Möglichkeit, Seiten von denen Container heruntergeladen werden (zum Beispiel Docker Hub), im Harbor zwischenzuspeichern. Damit fungiert der Harbor als Proxy. Am Beispiel von Docker Hub soll das demonstriert werden. Die Informationen wurden teilweise von der Webseite "[[https://blogs.vmware.com/cloud-foundation/2025/12/16/using-harbor-as-a-proxy-cache-for-cloud-based-registries/|blogs.vmware.com]]" entnommen. Sollte ein [[:container:harbor:start|Harbor]] als Registrierung vorhanden sein (sehr hilfreich in Umgebungen ohne direkten Internetzugang), gibt es die Möglichkeit, Seiten von denen Container heruntergeladen werden (zum Beispiel Docker Hub), im Harbor zwischenzuspeichern. Damit fungiert der Harbor als Proxy. Am Beispiel von Docker Hub soll das demonstriert werden. Die Informationen wurden teilweise von der Webseite "[[https://blogs.vmware.com/cloud-foundation/2025/12/16/using-harbor-as-a-proxy-cache-for-cloud-based-registries/|blogs.vmware.com]]" entnommen.
- 
-\\ 
  
 ===== Voraussetzung ===== ===== Voraussetzung =====
  
 Es wird vorausgesetzt, dass im Harbor bereits ein Registrierung zum Docker Hub besteht, wie es unter Punkt 6 [[:container:harbor:start|hier]] beschrieben steht. Es wird vorausgesetzt, dass im Harbor bereits ein Registrierung zum Docker Hub besteht, wie es unter Punkt 6 [[:container:harbor:start|hier]] beschrieben steht.
- 
-\\ 
  
 ===== Proxy-Projekt ===== ===== Proxy-Projekt =====
Zeile 92: Zeile 76:
  
 Wichtig ist hier die Aktivierung von "''Proxy Cache''". Wichtig ist hier die Aktivierung von "''Proxy Cache''".
 +===== Nginx von Docker Hub =====
  
-\\+Jetzt kann Nginx von Docker Hub gezogen werden, über den Harbor als Proxy.
  
-\\+Direkter Aufruf ohne Harbor: '' ''
  
-===== Nginx von Docker Hub =====+''~# docker pull nginx:latest ''
  
-Jetzt kann Nginx von Docker Hub gezogen werden, über den Harbor als Proxy.+Aufruf über den Harbor
 +<code>
  
-Direkter Aufruf ohne Harbor:+~# docker 
 +pull 
 +slxharbor.fritz.box / 
 +docker-hub - 
 +proxy / 
 +nginx 
 +
 +latest 
 + <font inherit/monospace;;inherit;;#000000background-color:#ffffff;>Error response from daemon: failed to resolve reference "slxharbor.fritz.box/docker-hub-proxy/nginx:latest": failed to do request: Head "https://slxharbor.fr</font>         \ 
 +itz.box/v2/docker-hub-proxy/nginx/manifests/latest": tls: failed to verify certificate: x509: certificate signed by unknown authority \ 
 +~# 
 + 
 +</code> 
 + 
 +===== Zertifikatsproblem ===== 
 + 
 +Dem Harbor-Zertifikat wird nicht vertraut, weil es nicht bekannt ist. Das liegt daran, dass es ein selbst erstelltes Zertfikat ist. Damit Docker dem Zertifikat vertraut, muss es in das Verzeichnis "/usr/local/share/ca-certificates/" kopiert und dem Zertifikatsspeicher hinzugefügt werden. 
 + 
 +**Schritt 1**: Kopieren der CA:
 <code> <code>
 +~# cp -v ca.crt /usr/local/share/ca-certificates/
 +'ca.crt' -> '/usr/local/share/ca-certificates/ca.crt'
 +~#
  
 +</code>
  
-~# docker pull nginx:latest+**Schritt 2**: Kopieren des Server-Zertifikates: 
 +<code> 
 +~# cp -v slxharbor.fritz.box.crt /usr/local/share/ca-certificates/ 
 +'slxharbor.fritz.box.crt' -> '/usr/local/share/ca-certificates/slxharbor.fritz.box.crt' 
 +~# 
 + 
 +</code>
  
 +**Schritt 3**: Hinzufügen des Zertifikates zum Zertifikatsspeicher:
 <code> <code>
 +~# update-ca-certificates --fresh
 +Clearing symlinks in /etc/ssl/certs...
 +done.
 +Updating certificates in /etc/ssl/certs...
 +rehash: warning: skipping ca-certificates.crt, it does not contain exactly one certificate or CRL
 +rehash: warning: skipping duplicate certificate in slxharbor.fritz.box.pem
 +151 added, 0 removed; done.
 +Running hooks in /etc/ca-certificates/update.d...
 +~#
  
-\\+</code>
  
-\\+**Schritt 4**: Docker-Dienst neu starten: 
 +<code> 
 +~# systemctl restart docker 
 +~#
  
-\\+</code>
  
 +Erneuter Pull-Versuch:
 +
 +<code>
 +~# docker pull slxharbor.fritz.box/docker-hub-proxy/nginx:latest
 +Error response from daemon: unknown: failed to resolve reference "slxharbor.fritz.box/docker-hub-proxy/nginx:latest": unexpected status from HEAD request to https://slxharbor.fritz.box/v2/docker-hub-proxy/nginx/manifests/latest: 401 Unauthorized
 +~#
 +
 +</code>
 +
 +===== Authorisierung =====
 +
 +Damit Daten vom Harbor geholt werden können, muss eine (einmalige) Authorisierung erfolgen:
 +
 +<code>
 +~# docker login slxharbor.fritz.box --username sborne\
 +Password:
 +
 +WARNING! Your credentials are stored unencrypted in '/root/.docker/config.json'.\
 +Configure a credential helper to remove this warning. See\
 +https://docs.docker.com/go/credential-store/
 +
 +Login Succeeded
 +
 +~#
 +
 +</code>
 +
 +Nächster Pull-Versuch:
 +
 +<code>
 +~# docker pull slxharbor.fritz.box/docker-hub-proxy/nginx:latest\
 +latest: Pulling from docker-hub-proxy/nginx\
 +5b5fa0b64d74: Pull complete \
 +1733a4cd5954: Pull complete \
 +5b219a92f92a: Pull complete \
 +ee3a09d2248a: Pull complete \
 +7382b41547b8: Pull complete \
 +9ee60c6c0558: Pull complete \
 +114e699da838: Pull complete \
 +adeb5aba46ee: Download complete \
 +11488ed04caf: Download complete \
 +Digest: sha256:fb01117203ff38c2f9af91db1a7409459182a37c87cced5cb442d1d8fcc66d19\
 +Status: Downloaded newer image for slxharbor.fritz.box/docker-hub-proxy/nginx:latest\
 +slxharbor.fritz.box/docker-hub-proxy/nginx:latest
 +
 +~#
 +
 +</code>
 +
 +Geschafft!
 +
 +===== Kontrolle im Harbor =====
 +
 +Das gezogene Nginx ist jetzt auch im Harbor zu sehen:
 +
 +{{:container:docker:harbor-projekt-dockerhub-nginx.png?nolink&900x338}}
 +
 +\\
 <sub>//.Ende des Dokuments// </sub> <sub>//.Ende des Dokuments// </sub>
  
  
container/docker/start.1766405066.txt.gz · Zuletzt geändert: von sborne