networking di base

This commit is contained in:
dado
2025-07-26 22:04:11 +02:00
parent 0a270d7d82
commit c0074341f7

28
docker/008-networking.md Normal file
View File

@@ -0,0 +1,28 @@
# Networking
## Concetti base
I container, per impostazione predefinita, sono completamente isolati dal sistema host e tra di loro. Per consentire la comunicazione tra i container e il sistema host, è necessario aprire esplicitamente una determinata porta, rendere disponibile una risorse, ecc.
Per esporre una porta, si utilizza l'opzione `-p` con la seguente sintassi:
```bash
docker run -d -p 8080:80 nginx
```
In questo esempio, la porta 80 del container viene mappata sulla porta 8080 del sistema host. Ciò significa che le richieste inviate alla porta 8080 dell'host verranno inoltrate alla porta 80 del container, dove il servizio nginx è in ascolto.
```bash
docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f00ddc2a0b6a nginx "/docker-entrypoint.…" 13 seconds ago Up 13 seconds 0.0.0.0:8080->80/tcp, [::]:8080->80/tcp interesting_meninsky
```
Se si desidera servire contenuti web, è possibile utilizzare l'opzione `-v` (*volume*) per mappare un contenuto all'interno del container. La sintassi è simile alla precedente:
```bash
docker run -d -p 8080:80 -v /path/to/my/webcontent:/usr/share/nginx/html nginx
```
In questo caso, il contenuto presente nella directory */path/to/my/webcontent* del sistema host sarà disponibile all'interno del container nella directory */usr/share/nginx/html*.