Docker
Modalità Docker --net (bridge, hots, contenitore mappato e nessuno).
Ricerca…
introduzione
Iniziare
Modalità Bridge È un default e collegato al bridge docker0. Metti il contenitore su un namespace di rete completamente separato.
Modalità host Quando il contenitore è solo un processo in esecuzione in un host, il contenitore verrà collegato alla scheda NIC host.
Modalità contenitore mappato Questa modalità essenzialmente associa un nuovo contenitore a uno stack di rete di contenitori esistente. Viene anche chiamato "contenitore in modalità contenitore".
Nessuno Indica al docker di mettere il contenitore nel proprio stack di rete senza configurazione
Modalità Bridge, modalità host e modalità contenitore mappato
Modalità Ponte
$ docker run –d –-name my_app -p 10000:80 image_name
Si noti che non è stato necessario specificare --net = bridge perché questa è la modalità di lavoro predefinita per la finestra mobile. Ciò consente di eseguire più contenitori per l'esecuzione sullo stesso host senza alcuna assegnazione di porta dinamica. Quindi la modalità BRIDGE evita il conflitto tra le porte ed è sicuro poiché ogni contenitore esegue il proprio spazio dei nomi di rete privata.
Modalità host
$ docker run –d –-name my_app –net=host image_name
Poiché utilizza lo spazio dei nomi della rete host, non è necessaria la configurazione speciale ma può comportare problemi di sicurezza.
Modalità contenitore mappato
Questa modalità mappa essenzialmente un nuovo contenitore in uno stack di rete dei contenitori esistente. Ciò implica che le risorse di rete come l'indirizzo IP e le mappature delle porte del primo contenitore saranno condivise dal secondo contenitore. Questo è anche chiamato modalità 'contenitore nel contenitore'. Supponiamo che tu abbia due contatti come web_container_1 e web_container_2 e eseguiremo web_container_2 in modalità contenitore mappato. Scarichiamo innanzitutto web_container_1 e lo eseguiamo in modalità distaccata con il seguente comando,
$ docker run -d --name web1 -p 80:80 USERNAME/web_container_1
Una volta scaricato, diamo un'occhiata e assicuriamoci che funzioni. Qui abbiamo appena mappato una porta in un contenitore in esecuzione nella modalità bridge predefinita. Ora, eseguiamo un secondo contenitore in modalità contenitore mappato. Lo faremo con questo comando.
$ docker run -d --name web2 --net=container:web1 USERNAME/web_container_2
Ora, se si ottengono semplicemente le informazioni di interfaccia su entrambi i contatori, si otterrà la stessa configurazione di rete. Questo include in realtà la modalità HOST che mappa con le informazioni esatte dell'host. Il primo contaienr è stato eseguito in modalità bridge predefinita e il secondo contenitore è in esecuzione in modalità contenitore mappato. Possiamo ottenere risultati molto simili avviando il primo contenitore in modalità host e il secondo contenitore in modalità contenitore mappato.