port mapping

This commit is contained in:
dado
2025-08-09 16:27:56 +02:00
parent 7780f1cca8
commit 7f4ceea31e
2 changed files with 14 additions and 0 deletions

View File

@@ -37,6 +37,10 @@ Esistono diverse tipologie di networking che possono essere utilizzate in Docker
## Port mapping
Mappare una porta significa associare una porta specifica del sistema host a una porta di un container. Questo processo consente di rendere accessibili i servizi in esecuzione all'interno del container dall'esterno.
![port-mapping](asset/img/port-mapping.png)
Il seguente stack di esempio è composto da due servizi: *php* e *nginx*. In particolare, il servizio nginx espone due porte: la porta 80 del container sulla porta 8080 del sistema host e la porta 443 del container sulla porta 8443 dell'host.
```yml
@@ -117,6 +121,16 @@ CONTAINER ID IMAGE COMMAND CREATED STATUS
6559daa92656 nginx:latest "/docker-entrypoint.…" 3 seconds ago Up 2 seconds 127.0.0.1:32769->80/tcp nginx
```
### Mapping Multiple Ports
Docker consente anche di mappare più porte contemporaneamente. Questo è utile quando il container deve esporre più servizi su porte diverse:
```bash
docker run -p 8080:80 -p 443:443 nginx
```
Oppure, per mappare un intervallo di porte: `docker run -p 5000-5100:5000-5100 nginx`.
## Reti virtuali
Per impostazione predefinita, i container Docker sono isolati l'uno dall'altro, il che impedisce la comunicazione diretta tra servizi che operano su stack diversi. Tuttavia, è possibile creare una rete virtuale condivisa tra container di due stack differenti, consentendo loro di comunicare.