Files
ansible-docker/roles/element/tasks/main.yml
2021-10-05 21:40:05 +03:00

40 lines
1.1 KiB
YAML

---
- name: Element web
docker_container:
name: 'element'
image: 'vectorim/element-web:latest'
pull: yes
container_default_behavior: no_defaults
volumes:
- /app
published_ports:
- "127.0.0.1:{{ ports.element_http }}:80"
restart_policy: always
register: element_out
- set_fact:
element_config_volume: "{{ element_out.container.Mounts | selectattr('Destination', 'equalto', '/app') | join }}"
- name: Read element config to variable
include_vars:
file: element_config.yml
name: element_config
- name: Put element config in place
copy:
content: "{{ element_config }}"
dest: "{{ element_config_volume.Source }}/config.json"
- name: Add caddy reverse proxy config
blockinfile:
path: /etc/caddy/Caddyfile
marker: "# {mark} ANSIBLE MANAGED BLOCK element"
block: |
element.{{ domain }} chat.{{ domain }} {
reverse_proxy http://127.0.0.1:{{ ports.element_http }}
}
validate: 'caddy validate --config %s --adapter caddyfile'
backup: yes
notify: reload caddy
when: reverse_proxy_type == 'caddy'