From 31933a6ebfb5851f6da69c6bde409d1cdc21a00e Mon Sep 17 00:00:00 2001 From: Christian Pointner Date: Fri, 13 Oct 2023 20:51:26 +0200 Subject: ele-media: add redis as filelocking memcache for nextcloud --- roles/elevate/media/defaults/main.yml | 2 ++ roles/elevate/media/tasks/nextcloud-app.yml | 24 ++++++++++++++++++++++ .../nextcloud-pod-spec-with-mariadb.yml.j2 | 17 +++++++++++++++ 3 files changed, 43 insertions(+) (limited to 'roles/elevate') diff --git a/roles/elevate/media/defaults/main.yml b/roles/elevate/media/defaults/main.yml index 7ce94480..6fa79922 100644 --- a/roles/elevate/media/defaults/main.yml +++ b/roles/elevate/media/defaults/main.yml @@ -6,6 +6,8 @@ elevate_media_share_gid: "800" elevate_media_nextcloud_db_uid: "801" elevate_media_nextcloud_db_gid: "801" +elevate_media_nextcloud_redis_uid: "802" +elevate_media_nextcloud_redis_gid: "802" # elevate_media_nextcloud_base_path: /srv/nextcloud # elevate_media_nextcloud_storage: # ... diff --git a/roles/elevate/media/tasks/nextcloud-app.yml b/roles/elevate/media/tasks/nextcloud-app.yml index b4047f62..4b7f0f75 100644 --- a/roles/elevate/media/tasks/nextcloud-app.yml +++ b/roles/elevate/media/tasks/nextcloud-app.yml @@ -33,6 +33,26 @@ state: directory +- name: add group for nextcloud redis + group: + name: nc-redis + gid: "{{ elevate_media_nextcloud_redis_gid }}" + +- name: add user for nextcloud redis + user: + name: nc-redis + uid: "{{ elevate_media_nextcloud_redis_uid }}" + group: nc-redis + password: "!" + +- name: create nextcloud database subdirectory + file: + path: "{{ elevate_media_nextcloud_base_path }}/{{ elevate_media_nextcloud_instance_name }}/redis" + owner: "{{ elevate_media_nextcloud_redis_uid }}" + group: "{{ elevate_media_nextcloud_redis_gid }}" + state: directory + + - name: create auxiliary config directory file: path: "{{ elevate_media_nextcloud_base_path }}/{{ elevate_media_nextcloud_instance_name }}/config" @@ -158,3 +178,7 @@ ## nextcloud-occ media.elev8.at config:system:set overwriteprotocol --value='https' ## nextcloud-occ media.elev8.at config:system:set overwrite.cli.url --value='https://media.elev8.at' ## nextcloud-occ media.elev8.at config:system:set default_phone_region --value='at' +## nextcloud-occ media.elev8.at config:system:set redis host --value '127.0.0.1' +## nextcloud-occ media.elev8.at config:system:set redis port --type integer --value 6379 +## nextcloud-occ media.elev8.at config:system:set redis timeout --type float --value 0.0 +## nextcloud-occ media.elev8.at config:system:set redis password diff --git a/roles/elevate/media/templates/nextcloud-pod-spec-with-mariadb.yml.j2 b/roles/elevate/media/templates/nextcloud-pod-spec-with-mariadb.yml.j2 index 026ff7a7..05c1a320 100644 --- a/roles/elevate/media/templates/nextcloud-pod-spec-with-mariadb.yml.j2 +++ b/roles/elevate/media/templates/nextcloud-pod-spec-with-mariadb.yml.j2 @@ -35,6 +35,19 @@ containers: - containerPort: 8080 hostPort: {{ elevate_media_nextcloud_instance.port }} hostIP: 127.0.0.1 +- name: redis + image: "redis:{{ elevate_media_nextcloud_instance.redis.version }}" + args: + - --bind 127.0.0.1 + securityContext: + runAsUser: {{ elevate_media_nextcloud_redis_uid }} + runAsGroup: {{ elevate_media_nextcloud_redis_gid }} + resources: + limits: + memory: "512Mi" + volumeMounts: + - name: redis + mountPath: /data - name: database image: "mariadb:{{ elevate_media_nextcloud_instance.database.version }}" args: @@ -68,6 +81,10 @@ volumes: hostPath: path: "{{ elevate_media_nextcloud_base_path }}/{{ elevate_media_nextcloud_instance_name }}/nextcloud" type: Directory +- name: redis + hostPath: + path: "{{ elevate_media_nextcloud_base_path }}/{{ elevate_media_nextcloud_instance_name }}/redis" + type: Directory - name: database hostPath: path: "{{ elevate_media_nextcloud_base_path }}/{{ elevate_media_nextcloud_instance_name }}/{{ elevate_media_nextcloud_instance.database.type }}" -- cgit v1.2.3