Metodi di pagamento Abuse

Cosa sono i porti container

10.09.2023, 23:08

Le porte dei container sono porte di rete specifiche che possono essere collegate a servizi o applicazioni specifici all'interno di un container.

Cosa c'è di speciale nei container

Ogni contenitore può avere le proprie porte, che possono essere usate per comunicare con il mondo esterno o con altri contenitori. Quando si avvia un contenitore, è possibile specificare quali porte devono essere disponibili all'interno del contenitore e quali porte devono essere inoltrate alla macchina host.

ports:

external_port:Internal port

Per esempio, inoltriamo la porta 80 come 8094:

docker-nginx:
  image: nginx
  ports:
    - '8094:80'

Quando il contenitore è in esecuzione, l'applicazione al suo interno può ascoltare o inviare dati attraverso la porta appropriata. Gli utenti possono interagire con l'applicazione accedendo alla porta del contenitore che è stata inoltrata alla macchina host.

Come avviare un contenitore

Per avviare le porte del contenitore, è necessario utilizzare il comando docker run con il flag -p o --publish.

La sintassi del comando docker run con il flag -p è la seguente:

docker run -p <host port>:<container port> <image_name>

Dove:

<porta host> è la porta dell'host che sarà proxata alla porta del contenitore.

<porta del contenitore> - la porta del contenitore a cui si accederà attraverso la porta dell'host specificata.

<nome_immagine> - il nome dell'immagine del contenitore che si vuole eseguire.

Ad esempio, per avviare un contenitore con un server web sulla porta 80 e proxy sulla porta 8080 dell'host, si può usare il seguente comando:

docker run -p 8080:80 nginx

Il server web in esecuzione nel contenitore sarà ora accessibile sulla porta 8080 dell'host.

È anche possibile utilizzare un intervallo di porte specificando più coppie <porta-host>:<porta-contenitore>.

Ad esempio:

docker run -p 8080-8082:80-82 nginx

In questo modo le porte 80, 81 e 82 del contenitore saranno proxy delle porte 8080, 8081 e 8082 dell'host, rispettivamente. Una volta avviato il contenitore con le porte proxy, sarà possibile accedervi attraverso le porte host specificate.