fix: align lab02 and lab03 student verification flows
This commit is contained in:
@@ -8,6 +8,8 @@ Creare due reti isolate che simulano una subnet pubblica e una subnet privata in
|
||||
- **VPC Public Subnet**: `lab02-vpc-public` (10.0.1.0/24) - per servizi accessibili
|
||||
- **VPC Private Subnet**: `lab02-vpc-private` (10.0.2.0/24) - isolata, senza accesso esterno
|
||||
|
||||
Nota pratica: il tutorial 2 usa `docker compose` per creare e gestire le stesse reti. Se segui questo tutorial alla lettera con `docker network create`, prima di avviare il compose dovrai rimuovere le reti manuali oppure dichiararle come reti esterne. Nel flusso consigliato per studenti conviene usare questo tutorial per capire i concetti e usare il compose del tutorial 2 come implementazione finale.
|
||||
|
||||
## Prerequisiti
|
||||
|
||||
- Docker Engine >= 24.0 installato e in esecuzione
|
||||
@@ -261,6 +263,12 @@ Hai completato questo tutorial quando:
|
||||
|
||||
Nel [prossimo tutorial](./02-deploy-containers-networks.md) imparerai a distribuire container in queste reti usando docker-compose.yml, creando un'architettura multi-tier (web pubblica, database privato).
|
||||
|
||||
Prima di passare al tutorial 2, se hai creato le reti manualmente in questo tutorial, puliscile per evitare conflitti con Compose:
|
||||
|
||||
```bash
|
||||
docker network rm lab02-vpc-public lab02-vpc-private
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
@@ -20,7 +20,7 @@ Creare un'architettura multi-tier con docker-compose:
|
||||
Esegui:
|
||||
|
||||
```bash
|
||||
cd ~/laboratori-cloud/labs/lab-02-network
|
||||
cd /home/luca/laboratori-cloud/labs/lab-02-network
|
||||
```
|
||||
|
||||
---
|
||||
@@ -96,6 +96,8 @@ volumes:
|
||||
|
||||
Salva il file.
|
||||
|
||||
Nota: in questo repository il file `docker-compose.yml` esiste gia. Puoi confrontare il tuo file con quello presente oppure usare direttamente quello del lab.
|
||||
|
||||
---
|
||||
|
||||
## Passo 3: Verificare la Configurazione
|
||||
@@ -114,9 +116,12 @@ Se valido, vedrai la configurazione completa. Se ci sono errori, verranno mostra
|
||||
|
||||
## Passo 4: Avviare i Servizi
|
||||
|
||||
Se nel tutorial 1 hai creato le reti manualmente con gli stessi nomi, rimuovile prima di questo comando. Altrimenti `docker compose up -d` fallisce per conflitto di ownership/label delle reti.
|
||||
|
||||
Esegui:
|
||||
|
||||
```bash
|
||||
docker network rm lab02-vpc-public lab02-vpc-private 2>/dev/null || true
|
||||
docker compose up -d
|
||||
```
|
||||
|
||||
@@ -156,7 +161,7 @@ Esegui:
|
||||
|
||||
```bash
|
||||
# Verifica container web nella rete pubblica
|
||||
docker inspect lab02-web --format '{{range .NetworkSettings.Networks}}{{.IPAddress}} in {{.NetworkID}}{{end}}'
|
||||
docker inspect lab02-web --format '{{range $k, $v := .NetworkSettings.Networks}}{{$v.IPAddress}} in {{$k}}{{end}}'
|
||||
```
|
||||
|
||||
Atteso (IP nella subnet pubblica):
|
||||
@@ -168,7 +173,7 @@ Esegui:
|
||||
|
||||
```bash
|
||||
# Verifica database nella rete privata
|
||||
docker inspect lab02-db --format '{{range .NetworkSettings.Networks}}{{.IPAddress}} in {{.NetworkID}}{{end}}'
|
||||
docker inspect lab02-db --format '{{range $k, $v := .NetworkSettings.Networks}}{{$v.IPAddress}} in {{$k}}{{end}}'
|
||||
```
|
||||
|
||||
Atteso (IP nella subnet privata):
|
||||
@@ -180,7 +185,7 @@ Esegui:
|
||||
|
||||
```bash
|
||||
# Verifica app in entrambe le reti (multi-homed)
|
||||
docker inspect lab02-app --format '{{range .NetworkSettings.Networks}}{{.IPAddress}} in {{.NetworkID}} | {{end}}'
|
||||
docker inspect lab02-app --format '{{range $k, $v := .NetworkSettings.Networks}}{{$v.IPAddress}} in {{$k}} | {{end}}'
|
||||
```
|
||||
|
||||
Atteso:
|
||||
|
||||
@@ -13,7 +13,7 @@ Verificare che:
|
||||
## Prerequisiti
|
||||
|
||||
- Completati [Tutorial 1](./01-create-vpc-networks.md) e [Tutorial 2](./02-deploy-containers-networks.md)
|
||||
- Container in esecuzione: `docker compose ps` mostra 3 container attivi
|
||||
- Container in esecuzione: `docker ps` mostra almeno `lab02-web`, `lab02-app` e `lab02-db` attivi
|
||||
|
||||
---
|
||||
|
||||
@@ -22,11 +22,11 @@ Verificare che:
|
||||
Esegui:
|
||||
|
||||
```bash
|
||||
cd ~/laboratori-cloud/labs/lab-02-network
|
||||
cd /home/luca/laboratori-cloud/labs/lab-02-network
|
||||
docker compose ps
|
||||
```
|
||||
|
||||
Assicurati che lab02-web, lab02-app, e lab02-db siano "Up".
|
||||
Assicurati che `lab02-web`, `lab02-app` e `lab02-db` siano "Up". Se `docker compose ps` non mostra nulla ma `docker compose up -d` e andato a buon fine, verifica con `docker ps | grep '^lab02-'`.
|
||||
|
||||
Se non lo sono:
|
||||
|
||||
@@ -44,15 +44,15 @@ Esegui:
|
||||
|
||||
```bash
|
||||
# Verifica: app puo raggiungere web (stessa rete pubblica)
|
||||
docker exec lab02-app ping -c 2 lab02-web
|
||||
docker exec lab02-app ping -c 2 web
|
||||
```
|
||||
|
||||
Atteso:
|
||||
```
|
||||
PING lab02-web (10.0.1.10): 56 data bytes
|
||||
PING web (10.0.1.10): 56 data bytes
|
||||
64 bytes from 10.0.1.10: seq=0 ttl=64 time=0.123 ms
|
||||
64 bytes from 10.0.1.10: seq=1 ttl=64 time=0.045 ms
|
||||
--- lab02-web ping statistics ---
|
||||
--- web ping statistics ---
|
||||
2 packets transmitted, 2 packets received, 0% packet loss
|
||||
```
|
||||
|
||||
@@ -68,18 +68,18 @@ Esegui:
|
||||
|
||||
```bash
|
||||
# Verifica: web NON puo raggiungere db (reti diverse)
|
||||
docker exec lab02-web ping -c 2 lab02-db
|
||||
docker exec lab02-web ping -c 2 db
|
||||
```
|
||||
|
||||
Atteso:
|
||||
```
|
||||
ping: bad address 'lab02-db'
|
||||
ping: bad address 'db'
|
||||
```
|
||||
|
||||
Oppure:
|
||||
```
|
||||
PING lab02-db (10.0.2.10): 56 data bytes
|
||||
--- lab02-db ping statistics ---
|
||||
PING db (10.0.2.10): 56 data bytes
|
||||
--- db ping statistics ---
|
||||
2 packets transmitted, 0 packets received, 100% packet loss
|
||||
```
|
||||
|
||||
@@ -97,7 +97,7 @@ Esegui:
|
||||
|
||||
```bash
|
||||
# Verifica: app puo raggiungere web (stessa rete pubblica)
|
||||
docker exec lab02-app ping -c 2 lab02-web
|
||||
docker exec lab02-app ping -c 2 web
|
||||
```
|
||||
|
||||
Atteso: SUCCESSO
|
||||
@@ -106,7 +106,7 @@ Esegui:
|
||||
|
||||
```bash
|
||||
# Verifica: app puo raggiungere db (stessa rete privata)
|
||||
docker exec lab02-app ping -c 2 lab02-db
|
||||
docker exec lab02-app ping -c 2 db
|
||||
```
|
||||
|
||||
Atteso: SUCCESSO
|
||||
@@ -123,12 +123,12 @@ Esegui:
|
||||
|
||||
```bash
|
||||
# Test DNS nella stessa rete
|
||||
docker exec lab02-app nslookup lab02-web
|
||||
docker exec lab02-app nslookup web
|
||||
```
|
||||
|
||||
Atteso:
|
||||
```
|
||||
Name: lab02-web
|
||||
Name: web
|
||||
Address 1: 10.0.1.10
|
||||
```
|
||||
|
||||
@@ -136,7 +136,7 @@ Esegui:
|
||||
|
||||
```bash
|
||||
# Test DNS cross-rete (dovrebbe fallire)
|
||||
docker exec lab02-web nslookup lab02-db
|
||||
docker exec lab02-web nslookup db
|
||||
```
|
||||
|
||||
Atteso: Fallisce o restituisce errore
|
||||
|
||||
Reference in New Issue
Block a user