#!/bin/bash # init_user1.sh — Création de l'utilisateur read-only user_1 # # Ce script est exécuté automatiquement au premier démarrage du conteneur # par l'image officielle postgres (via /docker-entrypoint-initdb.d/). # La variable PG_USER_1_PASSWORD doit être transmise via --env-file .env. set -e psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" <<-EOSQL CREATE ROLE user_1 WITH LOGIN NOINHERIT PASSWORD '${PG_USER_1_PASSWORD}'; GRANT CONNECT ON DATABASE ${POSTGRES_DB} TO user_1; GRANT USAGE ON SCHEMA public TO user_1; GRANT SELECT ON ALL TABLES IN SCHEMA public TO user_1; EOSQL echo "✅ Utilisateur user_1 créé avec les privilèges en lecture seule."