Questo articolo spiegherà la differenza tra le porte ed esporrà il tasto in Docker Compose.
Differenza tra esporre e porte nella composizione di Docker
IL "esporre" E "porti"Le chiavi in Docker Compose vengono utilizzate per configurare la rete e le porte di esposizione per il contenitore. Tuttavia, entrambe le chiavi vengono utilizzate per lo stesso scopo, ma la differenza chiave tra le "porte" ed "esporre" è che la chiave esporre è accessibile ai servizi connessi alla stessa rete ma non all'host. Al contrario, le porte sono accessibili e pubblicate sull'host e sulla rete connessa.
Controllando la differenza tra le chiavi "esporre" e "porte" in docker-compose praticamente
Per verificare la differenza tra esporre e porte chiave praticamente, passare attraverso gli esempi elencati:
Esempio 1: utilizzare la chiave "porte" nel file di composizione docker
IL "porti"La chiave viene utilizzata per pubblicare il contenitore sulla macchina host. Questi contenitori sono accessibili a tutti i servizi che stanno eseguendo l'host e su una rete connessa.
Per utilizzare il tasto "Porte" in Docker Composi, controlla le istruzioni fornite.
Passaggio 1: creare un "docker-compone.YML "
Fare un "docker-compose.YML"File e incolla il blocco di codice seguente nel file:
Versione: "3"
Servizi:
ragnatela:
Immagine: nginx: ultimo
Porte:
- 8080: 80
Secondo lo snippet sopra:
Passaggio 2: avvia contenitori
Successivamente, crea e accendi il contenitore di compositore con l'aiuto di "Docker-Opse Up"Comando:
> docker -compose up -d
Passaggio 3: elenco compositore contenitore
Elenca il contenitore e verifica la porta di esposizione del contenitore. Dall'output, può osservare che abbiamo pubblicato il contenitore sull'host:
> Docker-compone PS
Esempio 2: utilizzare la chiave "Espose" nel file Docker-Opse
Per utilizzare la chiave esporre in "docker-compose.YML"File, dai un'occhiata alle istruzioni fornite.
Passaggio 1: creare un "docker-compone.YML "
Ora, configura il "ragnatela"Servizio sull'esposizione della porta 80 con l'aiuto di"esporre" chiave. Qui, non abbiamo definito alcuna rete per il contenitore:
Versione: "3"
Servizi:
ragnatela:
Immagine: nginx: ultimo
esporre:
- 8080: 80
Passaggio 2: accendi il contenitore
Quindi, creare e avviare il contenitore compose per eseguire il servizio Web utilizzando il comando fornito:
> docker -compose up -d
Passaggio 3: elenco compositore contenitore
Elenca il contenitore compose e controlla la porta esportato del contenitore. Dall'output seguente, è possibile osservare che il contenitore è accessibile solo sulla porta 80 su una rete selezionata predefinita ma non sull'host:
> Docker-compone PS
Abbiamo definito la distinzione di "esporre" E "porti"Chiavi in Docker Componge.
Conclusione
IL "esporre" E "porti"Sono entrambi utilizzati per specificare la porta di esposizione del contenitore per eseguire servizi definiti. La principale differenza tra queste due chiavi è che le "porte" sono pubblicate e accessibili sulla macchina host e anche sulla rete specificata, mentre "esporre" è pubblicato solo sulla rete definita e accessibile dai servizi in esecuzione sulla stessa rete. Questo articolo ha dimostrato la distinzione tra "porte" ed "esporre" nella composizione di Docker.