PostgreSQL è un database relazionale potente e open-source. Utilizzarlo con Docker e Docker Compose facilita il deployment e la gestione. In questo articolo, vedremo come configurare PostgreSQL in Docker utilizzando Docker Compose e come interagire con esso utilizzando un'applicazione Java.
Prerequisiti
- Docker e Docker Compose installati
- Java 8+ configurato nel sistema
Configurare Docker Compose
Crea un file docker-compose.yml
con il seguente contenuto:
version: '3.8'
services:
postgres:
image: postgres:latest
container_name: postgres_container
environment:
POSTGRES_USER: user
POSTGRES_PASSWORD: password
POSTGRES_DB: exampledb
ports:
- "5432:5432"
volumes:
- postgres_data:/var/lib/postgresql/data
volumes:
postgres_data:
Questo file configura un'istanza PostgreSQL con credenziali predefinite e un database chiamato exampledb
.
Avviare il Servizio PostgreSQL
- Esegui il comando
docker compose up -d
per avviare il container PostgreSQL in background. - Verifica che il servizio sia attivo con
docker ps
.
Configurare un'Applicazione Java
Crea un progetto Maven con il seguente pom.xml
per includere le dipendenze necessarie:
<dependencies>
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>42.6.0</version>
</dependency>
</dependencies>
Crea una classe Java per connettersi al database:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class DatabaseConnection {
private static final String URL = "jdbc:postgresql://localhost:5432/exampledb";
private static final String USER = "user";
private static final String PASSWORD = "password";
public static void main(String[] args) {
try (Connection connection = DriverManager.getConnection(URL, USER, PASSWORD)) {
System.out.println("Connessione al database riuscita!");
} catch (SQLException e) {
System.out.println("Errore durante la connessione al database: " + e.getMessage());
}
}
}
Testare la Connessione
- Compila ed esegui la classe Java.
- Se tutto è configurato correttamente, dovresti vedere il messaggio "Connessione al database riuscita!" nella console.
Conclusione
Abbiamo visto come configurare PostgreSQL con Docker Compose e come interagire con esso utilizzando Java. Questa configurazione può essere utilizzata per sviluppare applicazioni robuste e scalabili.