refactor: replace deprecated docker-compose with docker compose across repository

This commit is contained in:
Luca Sacchi Ricciardi
2026-04-09 12:15:00 +02:00
parent 64b7d49056
commit dceefe0573
33 changed files with 115 additions and 114 deletions
@@ -43,8 +43,8 @@ done
```bash
# Verifica tutti i servizi nel compose file
docker-compose ps --services | while read service; do
container=$(docker-compose ps -q $service)
docker compose ps --services | while read service; do
container=$(docker compose ps -q $service)
echo "Service: $service, User: $(docker exec $container whoami)"
done
```
+2 -2
View File
@@ -107,7 +107,7 @@ test_no_container_runs_as_root() {
fi
# Get all services from compose file
local services=$(docker-compose -f "$compose_file" ps --services 2>/dev/null || echo "")
local services=$(docker compose -f "$compose_file" ps --services 2>/dev/null || echo "")
if [ -z "$services" ]; then
echo -e "${YELLOW}SKIP${NC}: No services defined yet"
@@ -118,7 +118,7 @@ test_no_container_runs_as_root() {
local root_containers=0
while IFS= read -r service; do
if [ -n "$service" ]; then
local container_name=$(docker-compose -f "$compose_file" ps -q "$service" 2>/dev/null || echo "")
local container_name=$(docker compose -f "$compose_file" ps -q "$service" 2>/dev/null || echo "")
if [ -n "$container_name" ]; then
local user=$(docker exec "$container_name" whoami 2>/dev/null || echo "unknown")
if [ "$user" = "root" ]; then
@@ -104,11 +104,11 @@ else
fi
echo ""
# Test 6: Verify docker-compose service
echo -e "${BLUE}[6/6] Verifying docker-compose service...${NC}"
# Test 6: Verify docker compose service
echo -e "${BLUE}[6/6] Verifying docker compose service...${NC}"
# Start container in detached mode
if docker compose up -d >/dev/null 2>&1; then
echo -e " ${GREEN}${NC} docker-compose service started"
echo -e " ${GREEN}${NC} docker compose service started"
# Wait for container to be ready
sleep 3
@@ -120,10 +120,10 @@ if docker compose up -d >/dev/null 2>&1; then
# Verify user
actual_user=$(docker exec lab01-iam-test whoami 2>/dev/null || echo "unknown")
if [ "$actual_user" = "labuser" ]; then
echo -e " ${GREEN}${NC} docker-compose container runs as non-root"
echo -e " ${GREEN}${NC} docker compose container runs as non-root"
inc_pass
else
echo -e " ${RED}${NC} docker-compose container running as $actual_user (expected labuser)"
echo -e " ${RED}${NC} docker compose container running as $actual_user (expected labuser)"
inc_fail
fi
else
@@ -134,7 +134,7 @@ if docker compose up -d >/dev/null 2>&1; then
# Cleanup
docker compose down --volumes >/dev/null 2>&1
else
echo -e " ${RED}${NC} Failed to start docker-compose service"
echo -e " ${RED}${NC} Failed to start docker compose service"
inc_fail
fi
echo ""
@@ -49,7 +49,8 @@ echo ""
# Test 3: Non-root container execution (INF-01)
echo -e "${BLUE}[3/3] Checking non-root container execution (INF-01)...${NC}"
compose_file="labs/lab-01-iam/docker-compose.yml"
cd labs/lab-01-iam
compose_file="docker-compose.yml"
if [ ! -f "$compose_file" ]; then
echo -e " ${YELLOW}${NC} docker-compose.yml not found"
all_passed=false
@@ -65,11 +66,11 @@ else
fi
# If containers are running, verify they're not root
if docker-compose -f "$compose_file" ps --services 2>/dev/null | grep -q .; then
if docker compose -f "$compose_file" ps --services 2>/dev/null | grep -q .; then
local root_count=0
while IFS= read -r service; do
[ -z "$service" ] && continue
local container=$(docker-compose -f "$compose_file" ps -q "$service" 2>/dev/null || echo "")
local container=$(docker compose -f "$compose_file" ps -q "$service" 2>/dev/null || echo "")
if [ -n "$container" ]; then
local user=$(docker exec "$container" whoami 2>/dev/null || echo "unknown")
if [ "$user" = "root" ]; then
@@ -77,7 +78,7 @@ else
((root_count++)) || true
fi
fi
done <<< "$(docker-compose -f "$compose_file" ps --services 2>/dev/null)"
done <<< "$(docker compose -f "$compose_file" ps --services 2>/dev/null)"
if [ $root_count -eq 0 ]; then
echo -e " ${GREEN}${NC} All running containers are non-root"
@@ -85,7 +86,7 @@ else
all_passed=false
fi
else
echo -e " ${YELLOW}${NC} No containers running (start with docker-compose up)"
echo -e " ${YELLOW}${NC} No containers running (start with docker compose up)"
fi
fi
echo ""
@@ -149,7 +149,7 @@ COMPOSE_FILE="$PROJECT_ROOT/labs/lab-02-network/docker-compose.yml"
if [[ -f "$COMPOSE_FILE" ]]; then
print_pass "docker-compose.yml found at $COMPOSE_FILE"
# Test 9: Verify docker-compose config is valid
# Test 9: Verify docker compose config is valid
print_test "Test 9: Validate docker-compose.yml syntax"
if docker compose -f "$COMPOSE_FILE" config &> /dev/null; then
print_pass "docker-compose.yml is valid YAML"
@@ -46,7 +46,7 @@
| Private bridge network | VPC Private Subnet | Isolamento di rete |
| Named volume | EBS volume | Persistenza dati |
| Resource limits (cpus, memory) | DB instance class | Allocazione risorse |
| docker-compose up | RDS create | Deploy command |
| docker compose up | RDS create | Deploy command |
| docker logs | CloudWatch logs | Logging e monitoring |
| pg_isready | RDS health check | Verifica disponibilità |
| Non-root user | IAM authentication | Controllo accessi |
@@ -140,10 +140,10 @@
| Operazione | Docker | RDS/AWS |
|------------|--------|---------|
| Deploy | docker-compose up | aws rds create-db-instance |
| Stop | docker-compose stop | aws rds stop-db-instance |
| Start | docker-compose start | aws rds start-db-instance |
| Scale | docker-compose up --scale | aws rds modify-db-instance |
| Deploy | docker compose up | aws rds create-db-instance |
| Stop | docker compose stop | aws rds stop-db-instance |
| Start | docker compose start | aws rds start-db-instance |
| Scale | docker compose up --scale | aws rds modify-db-instance |
| Status | docker ps | aws rds describe-db-instances |
| Logs | docker logs | aws rds describe-db-log-files |
| Backup | pg_dump | aws rds create-db-snapshot |
@@ -126,7 +126,7 @@ if docker ps --format '{{{{Names}}}}' | grep -q "^lab05-db$"; then
else
echo -e "${YELLOW}SKIP${NC} (container non in esecuzione)"
inc_skip
echo -e "${YELLOW}Avviare i container con: docker-compose up -d${NC}"
echo -e "${YELLOW}Avviare i container con: docker compose up -d${NC}"
fi
echo ""
@@ -83,7 +83,7 @@ echo -n "[TEST] Verifica container database in esecuzione... "
if ! docker ps --format '{{{{Names}}}}' | grep -q "^lab05-db$"; then
echo -e "${YELLOW}SKIP${NC} (container non in esecuzione)"
inc_skip
echo -e "${YELLOW}Avviare i container con: docker-compose up -d${NC}"
echo -e "${YELLOW}Avviare i container con: docker compose up -d${NC}"
echo ""
echo "Risultato: $pass_count PASS, $fail_count FAIL, $skip_count SKIP"
exit 0
@@ -76,7 +76,7 @@ echo -n "[TEST] Verifica container database in esecuzione... "
if ! docker ps --format '{{{{Names}}}}' | grep -q "^lab05-db$"; then
echo -e "${YELLOW}SKIP${NC} (container non in esecuzione)"
inc_skip
echo -e "${YELLOW}Avviare i container con: docker-compose up -d${NC}"
echo -e "${YELLOW}Avviare i container con: docker compose up -d${NC}"
echo ""
echo "Risultato: $pass_count PASS, $fail_count FAIL, $skip_count SKIP"
exit 0
@@ -115,7 +115,7 @@ echo -n "[TEST] Verifica container database in esecuzione... "
if ! docker ps --format '{{{{Names}}}}' | grep -q "^lab05-db$"; then
echo -e "${YELLOW}SKIP${NC} (container non in esecuzione)"
inc_skip
echo -e "${YELLOW}Avviare i container con: docker-compose up -d${NC}"
echo -e "${YELLOW}Avviare i container con: docker compose up -d${NC}"
echo ""
echo "Risultato: $pass_count PASS, $fail_count FAIL, $skip_count SKIP"
exit 0
@@ -129,7 +129,7 @@ if docker ps --format '{{{{Names}}}}' | grep -q "^lab05-db$"; then
else
echo -e "${RED}FAIL${NC}"
inc_fail
echo "Avviare i container: docker-compose up -d"
echo "Avviare i container: docker compose up -d"
echo ""
echo "Risultato: $pass_count PASS, $fail_count FAIL, $skip_count SKIP"
exit 1
@@ -57,7 +57,7 @@ Deploya il database nella rete privata.
Esegui:
```bash
# Avvia i container
docker-compose up -d
docker compose up -d
# Verifica che il database sia in esecuzione
docker ps | grep lab05-db
@@ -79,10 +79,10 @@ Simula un failure del database.
Esegui:
```bash
# Ferma il container
docker-compose stop db
docker compose stop db
# Rimuovi il container (NON il volume!)
docker-compose rm -f db
docker compose rm -f db
# Verifica che il container sia rimosso
docker ps -a | grep lab05-db
@@ -99,7 +99,7 @@ Crea un nuovo container con lo stesso volume.
Esegui:
```bash
# Riavvia il database
docker-compose up -d db
docker compose up -d db
# Attendi che sia pronto
sleep 10
@@ -162,12 +162,12 @@ Rimuovi TUTTO e ricrea da zero.
Esegui:
```bash
# Ferma e rimuovi tutto
docker-compose down -v
docker compose down -v
# Nota: -v rimuove anche i volumi! NON usare -v per preservare dati
# Riavvia
docker-compose up -d
docker compose up -d
# Verifica che i dati siano PERSI (corretto con -v)
docker exec lab05-db psql -U lab05_user -d lab05_db -c "