ki-ansible/tasks/main.yml

77 lines
1.9 KiB
YAML

# SPDX-FileCopyrightText: 2021 WTF Kooperative eG <https://wtf-eg.de/>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
---
- name: be sure the ki network exists
community.general.docker_network:
name: ki
- name: "be sure the {{ item }} volume exists"
docker_volume:
name: "{{ item }}"
with_items:
- ki_data
- ki_db
- name: be sure the ki config directory exists
become: true
file:
path: /etc/ki
state: directory
owner: root
group: root
mode: "0755"
- name: be sure the ki-frontend config file is in place
become: true
template:
src: frontend.js
dest: /etc/ki/frontend.js
owner: root
group: root
mode: "0655"
- name: be sure the ki_database container is running
community.general.docker_container:
name: ki_db
image: "{{ ki_db_image }}"
restart_policy: unless-stopped
env:
MYSQL_ROOT_PASSWORD: "{{ ki_db_root_password }}"
MYSQL_DATABASE: ki
MYSQL_USER: ki
MYSQL_PASSWORD: "{{ ki_db_password }}"
volumes:
- ki_db:/var/lib/mysql/
networks:
- name: ki
- name: be sure the ki_backend container is running
community.general.docker_container:
name: ki_backend
image: "{{ ki_backend_image }}"
restart_policy: unless-stopped
env:
SQLALCHEMY_DATABASE_URI: "mariadb+pymysql://ki:{{ ki_db_password }}@ki_db:3306/ki"
FLASK_ENV: "development"
KI_LOGLEVEL: "10"
KI_AUTH: "file"
CORS_ORIGINS: "{{ ki_frontend_uri }}"
ports:
- "{{ ki_backend_port }}:5000"
volumes:
- ki_data:/app/data/
networks:
- name: ki
- name: be sure the ki_frontend container is running
community.general.docker_container:
name: ki_frontend
image: "{{ ki_frontend_image }}"
restart_policy: unless-stopped
ports:
- "{{ ki_frontend_port }}:80"
volumes:
- /etc/ki/frontend.js:/usr/share/nginx/html/config.js