diff --git a/lotus-land-story/redis.yml b/lotus-land-story/redis.yml index 217670a..405b9b9 100644 --- a/lotus-land-story/redis.yml +++ b/lotus-land-story/redis.yml @@ -7,7 +7,8 @@ ansible.builtin.shell: > curl -fsSL https://packages.redis.io/gpg | sudo gpg --dearmor -o /usr/share/keyrings/redis-archive-keyring.gpg - creates: /usr/share/keyrings/redis-archive-keyring.gpg + args: + creates: /usr/share/keyrings/redis-archive-keyring.gpg - name: Add apt repo ansible.builtin.apt_repository: @@ -20,4 +21,42 @@ pkg: redis state: present + # TODO Figure out how to de-duplicate this + - name: Save docker_ip + block: + - name: Get docker0 IP address + ansible.builtin.shell: ip -4 -o addr show docker0 | awk '{print $4}' # noqa: risky-shell-pipe + vars: + executable: /usr/bin/bash + register: docker_ip + changed_when: docker_ip.rc != 0 + + - name: Save docker_ip fact + ansible.builtin.set_fact: + docker_ip: + cidr: "{{ docker_ip.stdout }}" + address: "{{ docker_ip.stdout | ansible.utils.ipaddr('address') }}" + + - name: Listen on docker0 interface + ansible.builtin.lineinfile: + dest: /etc/redis/redis.conf + regexp: '^bind 127.0.0.1' + line: "bind 127.0.0.1 {{ docker_ip.address }} -::1" + state: present + notify: Restart redis + + # Disable protected mode since we're only allowing access from localhost + # and docker + - name: Un-protect redis + ansible.builtin.lineinfile: + dest: /etc/redis/redis.conf + regexp: '^protected-mode ' + line: "protected-mode no" + state: present + notify: Restart redis + + handlers: + - name: Import restarts + ansible.builtin.import_tasks: restarts.yml + # vim: ft=yaml.ansible