From d48534642431cd737c59096d90f0bebf130e52bf Mon Sep 17 00:00:00 2001 From: Michael Grote Date: Tue, 2 Apr 2024 22:48:44 +0200 Subject: [PATCH] lldap --- docker-compose/lldap/docker-compose.yml.j2 | 12 ++++++------ host_vars/docker10.mgrote.net.yml | 4 ++-- keepass_db.kdbx | Bin 108590 -> 109102 bytes 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/docker-compose/lldap/docker-compose.yml.j2 b/docker-compose/lldap/docker-compose.yml.j2 index 60d9494d..7b780ac7 100644 --- a/docker-compose/lldap/docker-compose.yml.j2 +++ b/docker-compose/lldap/docker-compose.yml.j2 @@ -23,13 +23,13 @@ services: GID: 1000 LLDAP_HTTP_PORT: 17170 LLDAP_HTTP_URL: http://docker10.grote.lan:17170 - LLDAP_KEY_SEED: ganz_lang + LLDAP_KEY_SEED: "{{ lookup('keepass', 'lldap_key_seed', 'password') }}" LLDAP_VERBOSE: true - LLDAP_JWT_SECRET: jwt_secret + LLDAP_JWT_SECRET: "{{ lookup('keepass', 'lldap_jwt_secret', 'password') }}" LLDAP_LDAP_BASE_DN: dc=grote,dc=lan LLDAP_USER_DN: admin - LLDAP_LDAP_USER_PASS: user_pass_geheim - LLDAP_DATABASE_URL: mysql://lldap-db-user:mysql_password@lldap-db/lldap + LLDAP_LDAP_USER_PASS: "{{ lookup('keepass', 'lldap_ldap_user_pass', 'password') }}" + LLDAP_DATABASE_URL: mysql://lldap-db-user:"{{ lookup('keepass', 'lldap_mysql_password', 'password') }}"@lldap-db/lldap LLDAP_SMTP_OPTIONS__ENABLE_PASSWORD_reset: true LLDAP_SMTP_OPTIONS__FROM: "LLDAP Admin " LLDAP_SMTP_OPTIONS__REPLY_TO: "Do not reply " @@ -48,8 +48,8 @@ services: - /etc/timezone:/etc/timezone:ro - db:/var/lib/mysql environment: - - MYSQL_ROOT_PASSWORD=mysql_root_password - - MYSQL_PASSWORD=mysql_password + - MYSQL_ROOT_PASSWORD="{{ lookup('keepass', 'lldap_mysql_root_password', 'password') }}" + - MYSQL_PASSWORD="{{ lookup('keepass', 'lldap_mysql_password', 'password') }}" - MYSQL_DATABASE=lldap - MYSQL_USER=lldap-db-user - MYSQL_INITDB_SKIP_TZINFO=1 diff --git a/host_vars/docker10.mgrote.net.yml b/host_vars/docker10.mgrote.net.yml index 6bf0a30b..a8b71a9c 100644 --- a/host_vars/docker10.mgrote.net.yml +++ b/host_vars/docker10.mgrote.net.yml @@ -15,11 +15,11 @@ lvm_groups: manage_lvm: true pvresize_to_max: true -### mgrote_mount_cifs +### mgrote_mount_cifs # löschen cifs_mounts: - name: bilder type: cifs - state: present + state: absent dest: /mnt/fileserver3_photoprism_bilder_ro src: //fileserver3.mgrote.net/bilder user: photoprism diff --git a/keepass_db.kdbx b/keepass_db.kdbx index 5f7b6982aae2bd0343c560866cfca301431ae4ea..d6ed24a3aba4e830a80a3c3eb59a3c7808b3900e 100644 GIT binary patch literal 109102 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