Γιατί το docker pull αγνοεί τις ρυθμίσεις proxy του container
Ρυθμίστε το στοιχείο Docker που κατεβάζει πραγματικά τις εικόνες, αντί να περιμένετε ότι οι μεταβλητές proxy του container ελέγχουν τον daemon.
Αν αποτυγχάνει το docker pull, ρυθμίστε τον Docker daemon ή το Docker Desktop. Η εικόνα κατεβαίνει πριν το container της εφαρμογής μπορέσει να διαβάσει τις μεταβλητές proxy του.
Εγγενές Docker Engine
Συγχωνεύστε αυτή την ενότητα με την υπάρχουσα ρύθμιση proxy του daemon, αλλάξτε το σημείο τεκμηρίωσης και διατηρήστε τις άσχετες ρυθμίσεις. Για δοκιμές δημόσιων εικόνων όπου επιτρέπονται δημόσιοι proxy, η λίστα HTTP proxy παρέχει υποψηφίους:
{
"proxies": {
"http-proxy": "http://203.0.113.10:8080",
"https-proxy": "http://203.0.113.10:8080",
"no-proxy": "localhost,127.0.0.1,registry.example.internal"
}
}Τα κλειδιά του daemon με παύλες διαφέρουν από τα κλειδιά camelCase στο ~/.docker/config.json του Docker client. Η ενότητα proxy του client δίνει μεταβλητές περιβάλλοντος σε νέα containers και builds· δεν ρυθμίζει λήψεις του daemon ούτε περιβάλλοντα ήδη υπαρχόντων containers.
Κάντε την επανεκκίνηση daemon που τεκμηριώνεται για την εγκατάσταση, σχεδιάζοντας την επίδραση στις τρέχουσες εργασίες. Ο daemon μπορεί επίσης να λάβει μεταβλητές proxy στο περιβάλλον εκκίνησης· ένα μεταγενέστερο export σε τερματικό δεν ενημερώνει υπηρεσία που εκτελείται.
Docker Desktop
Χρησιμοποιήστε τις ρυθμίσεις proxy του Desktop. Το Docker τεκμηριώνει ότι το Desktop αγνοεί εγγραφές proxy στο daemon.json, επομένως οι επανειλημμένες αλλαγές του παραδείγματος εγγενούς Engine δεν ρυθμίζουν τη διαδρομή αυτού του προϊόντος.
Ξαναδοκιμάστε τη λήψη εικόνας αφού ενημερώσετε το πραγματικό στοιχείο. Δείτε αν απέτυχε η πρόσβαση στο registry, η ταυτοποίηση, οι ανακατευθύνσεις ή η λήψη layer. Ένα λειτουργικό αίτημα HTTP μέσα σε υπάρχον container ελέγχει μόνο τη διαδρομή εκείνης της εφαρμογής. Μη βάζετε διαπιστευτήρια proxy σε κοινόχρηστα στιγμιότυπα ή αρχεία σε commit· η ρύθμιση daemon και το περιβάλλον container δεν είναι αποθήκες μυστικών.