diff --git a/ansible/playbooks/provision_vms.yml b/ansible/playbooks/provision_vms.yml index 02ed099..f280fa0 100644 --- a/ansible/playbooks/provision_vms.yml +++ b/ansible/playbooks/provision_vms.yml @@ -4,14 +4,6 @@ # roles: # - proxmox_vm -- hosts: edge - become: yes - roles: - - base - - docker - - keepalived - - traefik - - hosts: infra become: yes roles: @@ -21,20 +13,12 @@ - tinyauth - pocketid - website -# - hosts: all -# become: yes -# roles: -# - base -# - docker -# - komodo -# - hosts: purah -# become: yes -# roles: -# - vm_infra -# - vm_plex - -# - hosts: yunobo -# become: yes -# roles: -# - vm_apps +- hosts: edge + become: yes + roles: + - base + - docker + - komodo-periphery + - keepalived + - traefik diff --git a/ansible/roles/komodo-periphery/tasks/main.yml b/ansible/roles/komodo-periphery/tasks/main.yml new file mode 100644 index 0000000..cb057bc --- /dev/null +++ b/ansible/roles/komodo-periphery/tasks/main.yml @@ -0,0 +1,39 @@ +--- +- name: Fetch core public key from infra-core-1 + delegate_to: infra-core-1 + slurp: + src: /data/komodo/app/keys/core.pub + register: core_pub_key_content + run_once: true + +- name: Create komodo periphery directory + file: + path: /opt/komodo-periphery + state: directory + mode: "0755" + +- name: Create komodo periphery data directories + file: + path: "{{ item }}" + state: directory + mode: "0755" + loop: + - /data/komodo/app/keys + - /etc/komodo + +- name: Copy core public key to periphery hosts + copy: + content: "{{ core_pub_key_content['content'] | b64decode }}" + dest: /data/komodo/app/keys/core.pub + mode: "0644" + +- name: Create docker-compose file for komodo periphery + template: + src: docker-compose.yml.j2 + dest: /opt/komodo-periphery/docker-compose.yml + mode: "0644" + +- name: Start komodo periphery + shell: cd /opt/komodo-periphery && docker compose down && docker compose up -d + args: + chdir: /opt/komodo-periphery diff --git a/ansible/roles/komodo-periphery/templates/docker-compose.yml.j2 b/ansible/roles/komodo-periphery/templates/docker-compose.yml.j2 new file mode 100644 index 0000000..a4a5e4b --- /dev/null +++ b/ansible/roles/komodo-periphery/templates/docker-compose.yml.j2 @@ -0,0 +1,20 @@ +services: + periphery: + image: ghcr.io/moghtech/komodo-periphery:2 + init: true + container_name: komodo-periphery + restart: unless-stopped + environment: + PERIPHERY_CORE_ADDRESS: 10.0.4.10:9120 + PERIPHERY_CONNECT_AS: {{ inventory_hostname }} + PERIPHERY_CORE_PUBLIC_KEYS: file:/config/keys/core.pub + PERIPHERY_ROOT_DIRECTORY: /etc/komodo + PERIPHERY_DISABLE_TERMINALS: false + PERIPHERY_DISABLE_CONTAINER_TERMINALS: false + PERIPHERY_INCLUDE_DISK_MOUNTS: /etc/hostname + TZ: Europe/Lisbon + volumes: + - /data/komodo/app/keys:/config/keys + - /var/run/docker.sock:/var/run/docker.sock + - /proc:/proc + - /etc/komodo:/etc/komodo