data.coop-ansible/roles/docker/tasks/services/matrix_riot.yml

69 lines
1.6 KiB
YAML

---
- name: matrix network
docker_network:
name: matrix
- name: matrix database volume
docker_volume:
name: matrix_db
- name: riot volume
docker_volume:
name: riot_app
- name: upload riot config.json
template:
src: files/configs/riot-config.json
dest: /var/lib/docker/volumes/riot_app/_data/config.json
- name: upload riot.im.conf
template:
src: files/configs/riot.im.conf
dest: /var/lib/docker/volumes/riot_app/_data/riot.im.conf
- name: matrix container
docker_container:
name: matrix
image: matrixdotorg/synapse:latest
networks:
- name: matrix
env:
SYNAPSE_SERVER_NAME: "{{ matrix.domain }}"
SYNAPSE_REPORT_STATS: False
SYNAPSE_ENABLE_REGISTRATION: True
SYNAPSE_LOG_LEVEL: INFO
POSTGRES_HOST: "matrix_db"
POSTGRES_PASSWORD: "{{ postgres_passwords.matrix }}"
- name: matrix database container
docker_container:
name: matrix_db
image: postgres:10
state: started
restart_policy: always
networks:
- name: matrix
volumes:
- matrix_db:/var/lib/postgresql/data
env:
POSTGRES_DB: somethingelse
POSTGRES_USER: matrix
POSTGRES_PASSWORD: "{{ postgres_passwords.matrix }}"
- name: riot container
docker_container:
name: riot_app
image: avhost/docker-matrix-riot
state: started
restart_policy: always
networks:
- name: matrix
- name: external_services
volumes:
- riot_app:/data
env:
VIRTUAL_HOST: "{{ riot.domain }}"
LETSENCRYPT_HOST: "{{ riot.domain }}"
LETSENCRYPT_EMAIL: "{{ letsencrypt_email }}"