diff --git a/inventory/hosts.yml b/inventory/hosts.yml index 092ea65..0577401 100644 --- a/inventory/hosts.yml +++ b/inventory/hosts.yml @@ -17,6 +17,8 @@ all: ansible_host: 192.168.110.112 llama01: ansible_host: 192.168.130.52 + powerpanel-personal: + ansible_host: 192.168.140.200 timescaledb: ansible_host: 192.168.150.130 vectordb: diff --git a/playbooks/lehmann-powerpanel-personal.yml b/playbooks/lehmann-powerpanel-personal.yml new file mode 100644 index 0000000..936f7b8 --- /dev/null +++ b/playbooks/lehmann-powerpanel-personal.yml @@ -0,0 +1,62 @@ +# +# +# Automated installation for vaultwarden +# +# Project: playbooks +# Author: Tobias Lehmann +# License: MIT License (see LICENSE.md) +# +# Copyright (c) captica GmbH est. 2021 +# +- hosts: "leh01" + name: Create container + vars: + lxc_id: 109 + lxc_name: powerpanel-personal + lxc_domain: leh01.local + lxc_template: "local:vztmpl/debian-12-standard_12.12-1_amd64.tar.zst" + lxc_mac: CC:CC:CC:14:02:00 + lxc_bridge: vmbr140 + lxc_vlan: "" + lxc_disk: datapool:20 + lxc_cpu: 2 + lxc_memory: 2096 + lxc_swap: 2192 + lxc_ssh_pub_key: ~/.ssh/id_ed25519_ansible.pub + roles: + - lxc-container + +- hosts: "powerpanel-personal" + vars: + hostname: vaultwarden + tools_install_users: + - root + - ansible + ssh_pubkeys_root: + - "../files/ssh/root.pub" + ssh_pubkeys_ansible: + - "../files/ssh/ansible.pub" + roles: + - linux-base-install + - zsh + - vim + - fzf + - linux-docker + +- hosts: "powerpanel-personal" + tags: + - powerpanel-personal + - install + vars: + service_name: powerpanel-personal + service_directory: /opt/powerpanel-personal + service_volume_dirs: + - appdata + service_user_name: powerpanel-personal + service_user_id: 1090 + service_group_name: powerpanel-personal + service_group_id: 1090 + bankmanager_version: latest + tasks: + - name: "Install powerpanel-personal application" + include_tasks: setup-docker-application.yml \ No newline at end of file diff --git a/templates/powerpanel-personal/.env.j2 b/templates/powerpanel-personal/.env.j2 new file mode 100644 index 0000000..e69de29 diff --git a/templates/powerpanel-personal/docker-compose.yml.j2 b/templates/powerpanel-personal/docker-compose.yml.j2 new file mode 100644 index 0000000..e2ef197 --- /dev/null +++ b/templates/powerpanel-personal/docker-compose.yml.j2 @@ -0,0 +1,35 @@ +services: + powerpanel-business: + image: ghcr.io/nathanvaughn/powerpanel-business:local-latest + environment: + - TZ=Europe/Berlin + devices: + # sharing /dev/usb is sufficient for debian and ubuntu, + # but other distributions might also need access to + # /dev/bus/usb/* + - "/dev/usb:/dev/usb" + # - "/dev/bus/usb:/dev/bus/usb" + restart: always + ports: + # Ports: ???, http, https, ???, snmp, snmp + # See https://dl4jz3rbrsfum.cloudfront.net/documents/CyberPower_UM_PowerPanel-Business-490.pdf + - 2003:2003 + - 3052:3052 + - 53568:53568/tcp + - 53566:53566/udp + - 161:161/udp + - 162:162/udp + volumes: + - {{ service_directory }}/data:/data + - /etc/localtime:/etc/localtime:ro + - /etc/timezone:/etc/timezone:ro + networks: + - default + +networks: + default: + ipam: + driver: default + config: + - subnet: 172.10.0.0/16 + gateway: 172.10.0.1