diff --git a/intern/docker_fridgeserver/tasks/main.yml b/intern/docker_fridgeserver/tasks/main.yml new file mode 100644 index 0000000000000000000000000000000000000000..45a8fbf7395088b62163cc241c76043bccbdedc9 --- /dev/null +++ b/intern/docker_fridgeserver/tasks/main.yml @@ -0,0 +1,21 @@ +--- +- name: create folder struct for {{ servicename }} + ansible.builtin.file: + path: "{{ item }}" + state: "directory" + recurse: yes + with_items: + - "{{ basedir }}/config" + +- name: copy config files for {{ servicename }} + ansible.builtin.template: + src: "{{ item }}" + dest: "{{ basedir }}/{{ item }}" + mode: '0755' + with_items: + - docker-compose.yml + +- name: start {{ servicename }} + community.docker.docker_compose: + state: present + project_src: "{{ basedir }}" diff --git a/intern/docker_fridgeserver/templates/docker-compose.yml b/intern/docker_fridgeserver/templates/docker-compose.yml new file mode 100644 index 0000000000000000000000000000000000000000..a31a5682b3b74ab85ca9b3f1c1be14163516a8be --- /dev/null +++ b/intern/docker_fridgeserver/templates/docker-compose.yml @@ -0,0 +1,25 @@ +--- +version: "3.3" + +services: + + app: + image: jabertwo/fridgeserver:latest + restart: always + volumes: + - "{{ basedir }}/audio_files:/var/lib/mysql/data" + labels: + - traefik.enable=true + - traefik.http.routers.{{ servicename }}.rule=Host(`{{ domain }}`) + - traefik.http.routers.{{ servicename }}.entrypoints=websecure + - traefik.http.services.{{ servicename }}.loadbalancer.server.port=80 + networks: + - default + - web + +networks: + web: + external: true + +volumes: + audio_files: diff --git a/site.yml b/site.yml index f3b4b3deca045688a220a62f3f86a7f3b0cfadbb..725156feed242e273a8efa85131fc2ef50f794e7 100644 --- a/site.yml +++ b/site.yml @@ -125,7 +125,12 @@ basedir: /srv/tasmoadmin, domain: "tasmoadmin.warpzone.lan" } - + - { + role: intern/docker_fridgeserver, tags: fridgeserver, + servicename: fridgeserver, + basedir: /srv/fridgeserver, + domain: "fridgeserver.warpzone.lan" + } - hosts: webserver remote_user: root