initial homelab structure from NAS
This commit is contained in:
37
01_paperless.sql
Executable file
37
01_paperless.sql
Executable file
@@ -0,0 +1,37 @@
|
||||
-- =============================================================================
|
||||
-- 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
|
||||
Reference in New Issue
Block a user