# How-to: Connettersi a PostgreSQL in Docker ## Come connettersi al database ### Da container nella stessa rete ```bash docker exec lab05-app psql -h db -U lab05_user -d lab05_db ``` ### Dall'host con port forwarding (non recommended) Se devi connetterti dall'host, aggiungi temporaneamente: ```yaml # docker-compose.yml ports: - "127.0.0.1:5432:5432" ``` Poi: ```bash psql -h 127.0.0.1 -U lab05_user -d lab05_db ``` ### Con pgAdmin o altri tool 1. Configura connection string: ``` host=127.0.0.1 port=5432 user=lab05_user password=lab05_password dbname=lab05_db ``` 2. Oppure usa PostgreSQL URI: ``` postgresql://lab05_user:lab05_password@127.0.0.1:5432/lab05_db ``` ## Risoluzione problemi ### Connection refused Il database รจ in rete privata. Devi connetterti da container nella stessa rete: ```bash # Prima entra in un container docker exec -it lab05-app sh # Poi connettiti psql -h db -U lab05_user -d lab05_db ``` ### Password authentication failed Verifica le credenziali in docker-compose.yml: ```bash grep POSTGRES_PASSWORD docker-compose.yml ```