diff --git a/.env.example b/.env.example new file mode 100644 index 0000000..40bcf31 --- /dev/null +++ b/.env.example @@ -0,0 +1,10 @@ +# Configuration de la base de données en développement local + +# Configuration PostgreSQL +POSTGRES_USER=admin +POSTGRES_PASSWORD=admin123 +POSTGRES_DB=ptitpas_db + +# Configuration PgAdmin (accessible sur http://localhost:8080) +PGADMIN_DEFAULT_EMAIL=admin@localhost +PGADMIN_DEFAULT_PASSWORD=admin123 diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..4c49bd7 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.env diff --git a/docker-compose.dev.yml b/docker-compose.dev.yml new file mode 100644 index 0000000..68b61fd --- /dev/null +++ b/docker-compose.dev.yml @@ -0,0 +1,42 @@ +# Docker Compose pour développement local de la base de données uniquement +# Usage: docker compose -f docker-compose.dev.yml up -d + +services: + # Base de données PostgreSQL + postgres: + image: postgres:17 + container_name: ptitspas-postgres-standalone + restart: unless-stopped + environment: + POSTGRES_USER: ${POSTGRES_USER:-admin} + POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-admin123} + POSTGRES_DB: ${POSTGRES_DB:-ptitpas_db} + ports: + - "5432:5432" + volumes: + - ./migrations/01_init.sql:/docker-entrypoint-initdb.d/01_init.sql + - postgres_standalone_data:/var/lib/postgresql/data + networks: + - ptitspas_dev + + # Interface d'administration DB + pgadmin: + image: dpage/pgadmin4 + container_name: ptitspas-pgadmin-standalone + restart: unless-stopped + environment: + PGADMIN_DEFAULT_EMAIL: ${PGADMIN_DEFAULT_EMAIL:-admin@localhost} + PGADMIN_DEFAULT_PASSWORD: ${PGADMIN_DEFAULT_PASSWORD:-admin123} + ports: + - "8080:80" + depends_on: + - postgres + networks: + - ptitspas_dev + +volumes: + postgres_standalone_data: + +networks: + ptitspas_dev: + driver: bridge