-- ============================================================================= -- 01_paperless.sql -- Legt paperless-User und -Datenbank in postgresql17 an. -- -- NICHT als Volume eingebunden — manuell per stdin einspielen: -- docker exec -i postgresql17 psql -U postgres < 01_paperless.sql -- -- Nur ausführen wenn User/DB noch NICHT existieren (Phase 3a prüfen!). -- Passwort hier muss mit PAPERLESS_DB_PASSWORD in .env übereinstimmen. -- ============================================================================= -- User anlegen (idempotent) DO $$ BEGIN IF NOT EXISTS (SELECT FROM pg_catalog.pg_roles WHERE rolname = 'paperless') THEN CREATE ROLE paperless WITH LOGIN PASSWORD 'affentanz2345'; RAISE NOTICE 'User paperless angelegt.'; ELSE ALTER ROLE paperless WITH PASSWORD 'affentanz2345'; RAISE NOTICE 'User paperless existiert bereits — Passwort aktualisiert.'; END IF; END $$; -- Datenbank anlegen (idempotent) SELECT 'CREATE DATABASE paperless OWNER paperless' WHERE NOT EXISTS (SELECT FROM pg_database WHERE datname = 'paperless')\gexec -- Berechtigungen GRANT ALL PRIVILEGES ON DATABASE paperless TO paperless; -- Prüfausgabe \echo '' \echo '--- Datenbanken ---' \l paperless \echo '--- Rollen ---' \du paperless