Αυτό το άρθρο είναι ένα άρθρο καθρέφτη της αυτόματης μετάφρασης, κάντε κλικ εδώ για να μεταβείτε στο αρχικό άρθρο.

Άποψη: 8925|Απάντηση: 0

Docker Container για πρόσβαση σε εξωτερικές υπηρεσίες κεντρικού υπολογιστή

[Αντιγραφή συνδέσμου]
Δημοσιεύτηκε στις 19/11/2019 10:10:01 π.μ. | | | |
Το προεπιλεγμένο δίκτυο του κοντέινερ docker έχει τη μορφή γέφυρας (στο ίδιο LAN με τον κεντρικό υπολογιστή, αλλά χρησιμοποιώντας ξεχωριστή IP LAN), όταν το πρόγραμμα εκτελείται στο περιβάλλον παραγωγής, χρειάζεται μόνο να διαμορφώσετε την αντίστοιχη διεύθυνση υπηρεσίας για σύνδεση στη βάση δεδομένων, redis, κ.λπ.

Σε ένα περιβάλλον ανάπτυξης, εάν η υπηρεσία εκτελείται σε docker και η βάση δεδομένων εκτελείται τοπικά, η διαμόρφωση του 127.0.0.1 δεν είναι εύκολη στη χρήση.

Αυτό μπορεί να λυθεί με δύο τρόπους.

Λύση 1:

Αντιμετωπίστε το κεντρικό μηχάνημα και το κοντέινερ ως δύο ξεχωριστά μηχανήματα και διαμορφώστε την IP LAN ή τη δημόσια IP του κεντρικού υπολογιστή κατά τη διαμόρφωση της διεύθυνσης.

Λύση 2:

Γράψτε τη διεύθυνση κεντρικού υπολογιστή απευθείας ως: host.docker.internal, όμωςΗ δεύτερη μέθοδος απαιτεί έκδοση docker μεγαλύτερη από 18.03 και πρέπει να είναι διαθέσιμη σε Windows και Mac

Για να ελέγξετε εάν αυτές οι δύο μέθοδοι μπορούν να έχουν πρόσβαση στον κεντρικό υπολογιστή, μπορείτε να εκτελέσετε απευθείας μια εικόνα με το docker για να κάνετε ping στη γραμμή εντολών:

Εγκαταστήστε το εργαλείο ping σε ένα κοντέινερ κατασκευασμένο με Docker
https://www.itsvse.com/thread-8966-1-1.html
(Πηγή: Architect_Programmer)


Όπως μπορείτε να δείτε από την παραπάνω εικόνα, πρόσβαση σε κοντέινερhost.docker.εσωτερικόΜπορείτε να αποκτήσετε πρόσβαση στην υπηρεσία του κεντρικού υπολογιστή, ελέγχοντας το αρχείο /etc/hosts, θα διαπιστώσετε ότι δεν υπάρχει ανακατεύθυνση ονόματος τομέα και δεν γνωρίζετε τη συγκεκριμένη υποκείμενη αρχή του docker.

Τόσο ο κεντρικός υπολογιστής όσο και το κοντέινερ μπορούν να έχουν πρόσβαση στις υπηρεσίες του κεντρικού υπολογιστή μέσω του host.docker.internal, αλλά η διεύθυνση που επιστρέφεται από την εντολή ping είναι διαφορετική, ως εξής:









Προηγούμενος:Παραδείγματα εξηγούν τι είναι η διείσδυση της κρυφής μνήμης Redis, η χιονοστιβάδα της κρυφής μνήμης και η ανάλυση της κρυφής μνήμης
Επόμενος:Autofac Επιλύθηκε το σφάλμα "Εντοπίστηκε εξάρτηση κυκλικού στοιχείου"
Αποκήρυξη:
Όλο το λογισμικό, το υλικό προγραμματισμού ή τα άρθρα που δημοσιεύονται από το Code Farmer Network προορίζονται μόνο για μαθησιακούς και ερευνητικούς σκοπούς. Το παραπάνω περιεχόμενο δεν θα χρησιμοποιηθεί για εμπορικούς ή παράνομους σκοπούς, άλλως οι χρήστες θα υποστούν όλες τις συνέπειες. Οι πληροφορίες σε αυτόν τον ιστότοπο προέρχονται από το Διαδίκτυο και οι διαφορές πνευματικών δικαιωμάτων δεν έχουν καμία σχέση με αυτόν τον ιστότοπο. Πρέπει να διαγράψετε εντελώς το παραπάνω περιεχόμενο από τον υπολογιστή σας εντός 24 ωρών από τη λήψη. Εάν σας αρέσει το πρόγραμμα, υποστηρίξτε γνήσιο λογισμικό, αγοράστε εγγραφή και λάβετε καλύτερες γνήσιες υπηρεσίες. Εάν υπάρχει οποιαδήποτε παραβίαση, επικοινωνήστε μαζί μας μέσω email.

Mail To:help@itsvse.com