From b5c693bc8bf08fb6b0412b4cc6bcf886d3bb04bf Mon Sep 17 00:00:00 2001 From: gyurix Date: Sun, 31 Aug 2025 12:15:16 +0200 Subject: [PATCH] Add initial configuration files for matrix service and firewalls --- applications-tree.json | 6 + matrix/domain-matrix-admin.json | 60 +++++++++ matrix/firewall-matrix-admin.json | 75 +++++++++++ matrix/firewall-matrix-dns.json | 76 +++++++++++ matrix/firewall-matrix-smtp.json | 75 +++++++++++ matrix/firewall-matrix.json | 75 +++++++++++ matrix/matrix-secret.json | 24 ++++ matrix/service-matrix.json | 201 ++++++++++++++++++++++++++++++ matrix/template.json | 42 +++++++ 9 files changed, 634 insertions(+) create mode 100644 matrix/domain-matrix-admin.json create mode 100644 matrix/firewall-matrix-admin.json create mode 100644 matrix/firewall-matrix-dns.json create mode 100644 matrix/firewall-matrix-smtp.json create mode 100644 matrix/firewall-matrix.json create mode 100644 matrix/matrix-secret.json create mode 100644 matrix/service-matrix.json create mode 100644 matrix/template.json diff --git a/applications-tree.json b/applications-tree.json index 9a5747b..bd15cd3 100644 --- a/applications-tree.json +++ b/applications-tree.json @@ -77,6 +77,12 @@ "subtitle": "Identity management", "version": "latest", "icon": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTAiIGhlaWdodD0iNTAiIHZpZXdCb3g9IjAgMCA1MCA1MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTQzIDBIN0MzLjEzNDAxIDAgMCAzLjEzNDAxIDAgN1Y0M0MwIDQ2Ljg2NiAzLjEzNDAxIDUwIDcgNTBINDNDNDYuODY2IDUwIDUwIDQ2Ljg2NiA1MCA0M1Y3QzUwIDMuMTM0MDEgNDYuODY2IDAgNDMgMFoiIGZpbGw9IndoaXRlIi8+CjxwYXRoIGQ9Ik0yNC40ODc4IDdDMzEuOTM4NCA3IDM4IDEzLjEzNjMgMzggMjAuNjc4N0MzOCAyMy42NDI2IDM3LjA3OSAyNi40NjMyIDM1LjMzNjIgMjguODM0MkMzMy42Mjc4IDMxLjE1OTUgMzEuMjkwMSAzMi44NDg2IDI4LjU3NTEgMzMuNzE5OEwyNy44MjQ3IDMzLjk2MUwyNi4wMzY0IDI1LjAzMTVMMjYuNTMxMSAyNC43ODkyQzI4LjE0NTkgMjMuOTk5IDI5LjE4OTYgMjIuMzE1NiAyOS4xODk2IDIwLjUwMTJDMjkuMTg5NiAxNy44NzY0IDI3LjA4MDUgMTUuNzQwOSAyNC40ODgxIDE1Ljc0MDlDMjEuODk1OCAxNS43NDA5IDE5Ljc4NiAxNy44NzY0IDE5Ljc4NiAyMC41MDEyQzE5Ljc4NiAyMi4zMTU2IDIwLjgzIDIzLjk5OSAyMi40NDQ4IDI0Ljc4OTJMMjIuOTMwMiAyNS4wMjcyTDIwLjA0OTUgNDNIMTJWN0gyNC40ODgxSDI0LjQ4NzhaIiBmaWxsPSJibGFjayIvPgo8L3N2Zz4K" + }, + { + "name": "Matrix", + "title": "matrix", + "subtitle": "Communication", + "icon": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTAiIGhlaWdodD0iNTAiIHZpZXdCb3g9IjAgMCA1MCA1MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHJlY3Qgd2lkdGg9IjUwIiBoZWlnaHQ9IjUwIiByeD0iNyIgZmlsbD0id2hpdGUiLz4KPHBhdGggZD0iTTMuNDk5NTIgMTUuNDM3N1YzMy41NjUySDQuODAyNjVWMzRIM1YxNS4wMDUzSDQuODAyMDZWMTUuNDQwMUwzLjQ5OTUyIDE1LjQzNzdaTTguNTE4NDMgMjEuMTg0M1YyMi4xMDEzSDguNTQ0NTZDOC43NzI5NSAyMS43NjY1IDkuMDc1MSAyMS40ODg1IDkuNDI3NzcgMjEuMjg4OEM5Ljc3MjI3IDIxLjA5NjkgMTAuMTY3MiAyMS4wMDA3IDEwLjYxMTUgMjEuMDAwN0MxMS4wMzkyIDIxLjAwMDcgMTEuNDI5NCAyMS4wODM5IDExLjc4MjggMjEuMjUwMkMxMi4xMzYyIDIxLjQxNTkgMTIuNDA0NyAyMS43MDgxIDEyLjU4NzYgMjIuMTI3NUMxMi43ODg0IDIxLjgzMDUgMTMuMDYwNCAyMS41Njg1IDEzLjQwNTUgMjEuMzQxNkMxMy43NSAyMS4xMTQyIDE0LjE1NzQgMjEuMDAwNyAxNC42MjkgMjEuMDAwN0MxNC45ODY2IDIxLjAwMDcgMTUuMzE4IDIxLjA0NDcgMTUuNjIzMyAyMS4xMzE0QzE1LjkyODYgMjEuMjE5MyAxNi4xODk5IDIxLjM1ODkgMTYuNDA4NSAyMS41NTEzQzE2LjYyNTkgMjEuNzQzMiAxNi43OTY0IDIxLjk5NDQgMTYuOTE4NyAyMi4zMDQ0QzE3LjA0MDUgMjIuNjE0NSAxNy4xMDE3IDIyLjk4NzUgMTcuMTAxNyAyMy40MjUyVjI3Ljk1ODlIMTUuMjQ0NFYyNC4xMTk2QzE1LjI0NDQgMjMuODkyMSAxNS4yMzU1IDIzLjY3ODMgMTUuMjE4MiAyMy40NzY5QzE1LjIwNTggMjMuMjk0NCAxNS4xNTY5IDIzLjExNjMgMTUuMDc0NSAyMi45NTNDMTQuOTk1NCAyMi44MDQxIDE0Ljg3NSAyMi42ODExIDE0LjcyNzYgMjIuNTk5QzE0LjU3NSAyMi41MTIzIDE0LjM2NzcgMjIuNDY4NCAxNC4xMDU4IDIyLjQ2ODRDMTMuODQ0NCAyMi40Njg0IDEzLjYzMyAyMi41MTg5IDEzLjQ3MTQgMjIuNjE4N0MxMy4zMDk5IDIyLjcxOTYgMTMuMTgzMyAyMi44NTAzIDEzLjA5MTkgMjMuMDExOEMxMi45OTc0IDIzLjE4MjUgMTIuOTM1MyAyMy4zNjkyIDEyLjkwODkgMjMuNTYyNEMxMi44NzgxIDIzLjc2ODUgMTIuODYyNiAyMy45NzY2IDEyLjg2MjYgMjQuMTg0OVYyNy45NTg5SDExLjAwNDdWMjQuMTU4OEMxMS4wMDQ3IDIzLjk1OCAxMS4wMDA2IDIzLjc1OSAxMC45OTIyIDIzLjU2MjRDMTAuOTg1NSAyMy4zNzYxIDEwLjk0NzggMjMuMTkyMyAxMC44ODA2IDIzLjAxODRDMTAuODE2NSAyMi44NTQxIDEwLjcwMjEgMjIuNzE0MiAxMC41NTM5IDIyLjYxODdDMTAuNDAwNyAyMi41MTg5IDEwLjE3NjIgMjIuNDY4NCA5Ljg3OTc3IDIyLjQ2ODRDOS43NjIwOSAyMi40NzMzIDkuNjQ1NTMgMjIuNDkzMyA5LjUzMjkgMjIuNTI3OEM5LjM3OTQ0IDIyLjU3MiA5LjIzNjg0IDIyLjY0NzYgOS4xMTQxNiAyMi43NDk5QzguOTc4NzQgMjIuODU5MiA4Ljg2MzUyIDIzLjAxNjYgOC43NjczIDIzLjIyMTVDOC42NzE2NyAyMy40MjcgOC42MjM1NiAyMy42OTU1IDguNjIzNTYgMjQuMDI3NVYyNy45NTg5SDYuNzY1MDhWMjEuMTgxOUw4LjUxODQzIDIxLjE4NDNaTTE4LjI5NDkgMjIuMTgwM0MxOC40ODI2IDIxLjg5NTcgMTguNzMzMiAyMS42NTc5IDE5LjAyNzMgMjEuNDg1NEMxOS4zMzc1IDIxLjMwNTUgMTkuNjc1OCAyMS4xNzkyIDIwLjAyODEgMjEuMTExOEMyMC4zOTY1IDIxLjAzNzkgMjAuNzcxMyAyMS4wMDA3IDIxLjE0NzEgMjEuMDAwN0MyMS40ODc0IDIxLjAwMDcgMjEuODMxOSAyMS4wMjQ1IDIyLjE4MDYgMjEuMDcyNkMyMi41Mjk4IDIxLjEyMDcgMjIuODQ4MiAyMS4yMTUxIDIzLjEzNjIgMjEuMzU0N0MyMy40MjM3IDIxLjQ5NDMgMjMuNjU4OSAyMS42ODg1IDIzLjg0MyAyMS45Mzc0QzI0LjAyNiAyMi4xODY4IDI0LjExNzQgMjIuNTE2NSAyNC4xMTc0IDIyLjkyNjlWMjYuNDUxNEMyNC4xMTc0IDI2Ljc1NzkgMjQuMTM1MyAyNy4wNTAxIDI0LjE2OTcgMjcuMzI5M0MyNC4yMDQyIDI3LjYwOTEgMjQuMjY1MyAyNy44MTg3IDI0LjM1MjcgMjcuOTU4OUgyMi40NjkyQzIyLjM5OCAyNy43NDY4IDIyLjM1NDEgMjcuNTI2NCAyMi4zMzg2IDI3LjMwMzJDMjIuMDQxNiAyNy42MDkxIDIxLjY5MjkgMjcuODIzNSAyMS4yOTIgMjcuOTQ1MkMyMC44OTM0IDI4LjA2NzIgMjAuNDc4OCAyOC4xMjkzIDIwLjA2MTkgMjguMTI5NEMxOS43Mzg4IDI4LjEyOTQgMTkuNDM4MyAyOC4wODk2IDE5LjE1OTEgMjguMDEwNkMxOC44OTI4IDI3LjkzODcgMTguNjQzNSAyNy44MTQxIDE4LjQyNjIgMjcuNjQ0MUMxOC4yMTUyIDI3LjQ3NjIgMTguMDQ3MSAyNy4yNjA2IDE3LjkzNTYgMjcuMDE1MUMxNy44MTc0IDI2Ljc2MjEgMTcuNzU4NiAyNi40NjAzIDE3Ljc1ODYgMjYuMTExMUMxNy43NTg2IDI1LjcyNjggMTcuODI2MyAyNS40MTAyIDE3Ljk2MTcgMjUuMTYwOEMxOC4wOTY1IDI0LjkxMTkgMTguMjcwNiAyNC43MTM1IDE4LjQ4NSAyNC41NjQ0QzE4LjY5ODggMjQuNDE2IDE4Ljk0MjkgMjQuMzA0OSAxOS4yMTc5IDI0LjIzMDZDMTkuNDkyMyAyNC4xNTY0IDE5Ljc2OTcgMjQuMDk3NiAyMC4wNDg5IDI0LjA1MzZDMjAuMzI4IDI0LjAxMDMgMjAuNjAyNCAyMy45NzUyIDIwLjg3MjcgMjMuOTQ5MUMyMS4xNDM1IDIzLjkyMyAyMS4zODM1IDIzLjg4MzggMjEuNTkyNSAyMy44MzA5QzIxLjgwMjIgMjMuNzc4NiAyMS45NjczIDIzLjcwMiAyMi4wODk3IDIzLjYwMTZDMjIuMjEyIDIzLjUwMTMgMjIuMjY4NSAyMy4zNTUyIDIyLjI2MDIgMjMuMTYyMUMyMi4yNjAyIDIyLjk2MiAyMi4yMjc1IDIyLjgwMjIgMjIuMTYxNiAyMi42ODQ2QzIyLjEwMDYgMjIuNTcxMSAyMi4wMTAzIDIyLjQ3NTkgMjEuOTAwMiAyMi40MDlDMjEuNzgzNSAyMi4zNDEgMjEuNjU0NSAyMi4yOTY2IDIxLjUyMDcgMjIuMjc4M0MyMS4zNjY5IDIyLjI1NiAyMS4yMTE2IDIyLjI0NSAyMS4wNTYyIDIyLjI0NTZDMjAuNjg5NyAyMi4yNDU2IDIwLjQwMjMgMjIuMzI0IDIwLjE5MjYgMjIuNDgxNEMxOS45ODM1IDIyLjYzODMgMTkuODYxMiAyMi45MDA4IDE5LjgyNjEgMjMuMjY3MkgxNy45NjgyQzE3Ljk5NDQgMjIuODMwNyAxOC4xMDMxIDIyLjQ2ODQgMTguMjk0OSAyMi4xODAzWk0yMS45NjUgMjQuODA3NEMyMS44NDA3IDI0Ljg0ODIgMjEuNzEzOSAyNC44ODA5IDIxLjU4NTQgMjQuOTA1NEMyMS40NDQ1IDI0LjkzMjUgMjEuMzAyNyAyNC45NTQyIDIxLjE2MDIgMjQuOTcwN0MyMS4wMTE3IDI0Ljk4ODUgMjAuODYzMiAyNS4wMTA1IDIwLjcxNTMgMjUuMDM2QzIwLjU3NTggMjUuMDYyMyAyMC40MzgxIDI1LjA5NzQgMjAuMzAzMSAyNS4xNDEyQzIwLjE3NjcgMjUuMTgwNyAyMC4wNTc1IDI1LjI0MDQgMTkuOTUwMyAyNS4zMTgyQzE5Ljg0OTMgMjUuMzkyNCAxOS43NjkxIDI1LjQ4NjkgMTkuNzA3OSAyNS41OTk3QzE5LjY0NjggMjUuNzEzNyAxOS42MTY1IDI1Ljg1NzUgMTkuNjE2NSAyNi4wMzIxQzE5LjYxNjUgMjYuMTk4NCAxOS42NDY4IDI2LjMzOCAxOS43MDc5IDI2LjQ1MTRDMTkuNzY5MSAyNi41NjU1IDE5Ljg1MTcgMjYuNjU0NiAxOS45NTY4IDI2LjcyMDVDMjAuMDYxMyAyNi43ODU4IDIwLjE4MzEgMjYuODMxNiAyMC4zMjMzIDI2Ljg1NzdDMjAuNDYyMyAyNi44ODM4IDIwLjYwNjYgMjYuODk2OSAyMC43NTQ1IDI2Ljg5NjlDMjEuMTIwOSAyNi44OTY5IDIxLjQwNDMgMjYuODM2MyAyMS42MDUgMjYuNzEzNEMyMS44MDU4IDI2LjU5MTYgMjEuOTUzNyAyNi40NDQ5IDIyLjA1MDUgMjYuMjc0NEMyMi4xNDU1IDI2LjEwNDYgMjIuMjA0OSAyNS45MzIzIDIyLjIyNjkgMjUuNzU3N0MyMi4yNDgzIDI1LjU4MjUgMjIuMjU5NiAyNS40NDI5IDIyLjI1OTYgMjUuMzM3OFYyNC42NDI4QzIyLjE3MzYgMjQuNzE3MiAyMi4wNzM0IDI0Ljc3MzIgMjEuOTY1IDI0LjgwNzRaTTI5LjAwOTMgMjEuMTg0M1YyMi40MjkySDI3LjY0ODVWMjUuNzgzMkMyNy42NDg1IDI2LjA5OCAyNy43MDA4IDI2LjMwNzcgMjcuODA1MyAyNi40MTIyQzI3LjkwOTggMjYuNTE3NCAyOC4xMTk1IDI2LjU2OTYgMjguNDMzMSAyNi41Njk2QzI4LjUzODIgMjYuNTY5NiAyOC42MzggMjYuNTY1NSAyOC43MzQzIDI2LjU1NjZDMjguODI5OSAyNi41NDc3IDI4LjkyMTkgMjYuNTM0NiAyOS4wMDkzIDI2LjUxNzRWMjcuOTU4M0MyOC44MzU4IDI3Ljk4NjIgMjguNjYwOSAyOC4wMDM5IDI4LjQ4NTQgMjguMDExMkMyOC4yOTggMjguMDE5NiAyOC4xMTA1IDI4LjAyNCAyNy45MjI5IDI4LjAyNDJDMjcuNjM1NCAyOC4wMjQyIDI3LjM2MjIgMjguMDA0IDI3LjEwNSAyNy45NjQ4QzI2Ljg2NiAyNy45MzE4IDI2LjYzNTIgMjcuODU0IDI2LjQyNSAyNy43MzU2QzI2LjIyNzYgMjcuNjIxIDI2LjA2NjYgMjcuNDUzIDI1Ljk2MDUgMjcuMjUwOUMyNS44NDcgMjcuMDQxMiAyNS43OSAyNi43NjYyIDI1Ljc5IDI2LjQyNTNWMjIuNDI5MkgyNC42NjUxVjIxLjE4NDNIMjUuNzlWMTkuMTUyOUgyNy42NDg1VjIxLjE4NDNIMjkuMDA5M1pNMzEuNjY0OCAyMS4xODQzVjIyLjQ0MjJIMzEuNjkxQzMxLjg2ODkgMjIuMDE2OSAzMi4xNjk2IDIxLjY1NDIgMzIuNTU0NiAyMS40MDA1QzMyLjc0NTIgMjEuMjc0NCAzMi45NTIzIDIxLjE3NTEgMzMuMTY5OSAyMS4xMDUzQzMzLjM4OTggMjEuMDM1MiAzMy42MTkyIDIxIDMzLjg1IDIxLjAwMDdDMzMuOTcyMyAyMS4wMDA3IDM0LjEwNzIgMjEuMDIyNyAzNC4yNTU3IDIxLjA2NjFWMjIuNzk1NkMzNC4xNTE5IDIyLjc3NTcgMzQuMDQ3MiAyMi43NjA0IDMzLjk0MiAyMi43NDk5QzMzLjgyNDcgMjIuNzM3MSAzMy43MDY3IDIyLjczMDUgMzMuNTg4NiAyMi43MzAzQzMzLjI0ODMgMjIuNzMwMyAzMi45NjAyIDIyLjc4NzMgMzIuNzI1IDIyLjkwMDhDMzIuNDk5NyAyMy4wMDYxIDMyLjMwNDEgMjMuMTY1OSAzMi4xNTYgMjMuMzY1OEMzMi4wMDc4IDIzLjU3MTggMzEuOTAzMSAyMy44MDU4IDMxLjg0ODQgMjQuMDUzNkMzMS43ODU1IDI0LjMzMzEgMzEuNzU0OCAyNC42MTg5IDMxLjc1NjkgMjQuOTA1NFYyNy45NTgzSDI5Ljg5OVYyMS4xODcyTDMxLjY2NDggMjEuMTg0M1pNMzUuMDQwOSAyMC4xMzU5VjE4LjYwMjNIMzYuODk4N1YyMC4xMzU5SDM1LjA0MDlaTTM2Ljg5ODcgMjEuMTg0M1YyNy45NTUzSDM1LjA0MTVWMjEuMTg0M0gzNi44OTg3Wk0zNy44NjY5IDIxLjE4NDNIMzkuOTg2N0w0MS4xNzc2IDIyLjk1M0w0Mi4zNTQ4IDIxLjE4NDNINDQuNDA5M0w0Mi4xODQ5IDI0LjM1NTRMNDQuNjg0MyAyNy45NTg5SDQyLjU2MzlMNDEuMTUxNSAyNS44MjNMMzkuNzM3OCAyNy45NTg5SDM3LjY1NzhMNDAuMDkxMyAyNC4zOTQ2TDM3Ljg2NjkgMjEuMTg0M1pNNDYuOTU0NCAzMy41NjIzVjE1LjQzNDhINDUuNjUxM1YxNUg0Ny40NTM5VjMzLjk5NDdINDUuNjUxM1YzMy41NTk5TDQ2Ljk1NDQgMzMuNTYyM1oiIGZpbGw9IiMwNDA0MDQiLz4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzE1NF82KSI+CjxwYXRoIGQ9Ik00MyAwSDdDMy4xMzQwMSAwIDAgMy4xMzQwMSAwIDdWNDNDMCA0Ni44NjYgMy4xMzQwMSA1MCA3IDUwSDQzQzQ2Ljg2NiA1MCA1MCA0Ni44NjYgNTAgNDNWN0M1MCAzLjEzNDAxIDQ2Ljg2NiAwIDQzIDBaIiBmaWxsPSJ3aGl0ZSIvPgo8cGF0aCBkPSJNMy40OTk1MiAxNS40Mzc3VjMzLjU2NTJINC44MDI2NVYzNEgzVjE1LjAwNTNINC44MDIwNlYxNS40NDAxTDMuNDk5NTIgMTUuNDM3N1pNOC41MTg0MyAyMS4xODQzVjIyLjEwMTNIOC41NDQ1NkM4Ljc3Mjk1IDIxLjc2NjUgOS4wNzUxIDIxLjQ4ODUgOS40Mjc3NyAyMS4yODg4QzkuNzcyMjcgMjEuMDk2OSAxMC4xNjcyIDIxLjAwMDcgMTAuNjExNSAyMS4wMDA3QzExLjAzOTIgMjEuMDAwNyAxMS40Mjk0IDIxLjA4MzkgMTEuNzgyOCAyMS4yNTAyQzEyLjEzNjIgMjEuNDE1OSAxMi40MDQ3IDIxLjcwODEgMTIuNTg3NiAyMi4xMjc1QzEyLjc4ODQgMjEuODMwNSAxMy4wNjA0IDIxLjU2ODUgMTMuNDA1NSAyMS4zNDE2QzEzLjc1IDIxLjExNDIgMTQuMTU3NCAyMS4wMDA3IDE0LjYyOSAyMS4wMDA3QzE0Ljk4NjYgMjEuMDAwNyAxNS4zMTggMjEuMDQ0NyAxNS42MjMzIDIxLjEzMTRDMTUuOTI4NiAyMS4yMTkzIDE2LjE4OTkgMjEuMzU4OSAxNi40MDg1IDIxLjU1MTNDMTYuNjI1OSAyMS43NDMyIDE2Ljc5NjQgMjEuOTk0NCAxNi45MTg3IDIyLjMwNDRDMTcuMDQwNSAyMi42MTQ1IDE3LjEwMTcgMjIuOTg3NSAxNy4xMDE3IDIzLjQyNTJWMjcuOTU4OUgxNS4yNDQ0VjI0LjExOTZDMTUuMjQ0NCAyMy44OTIxIDE1LjIzNTUgMjMuNjc4MyAxNS4yMTgyIDIzLjQ3NjlDMTUuMjA1OCAyMy4yOTQ0IDE1LjE1NjkgMjMuMTE2MyAxNS4wNzQ1IDIyLjk1M0MxNC45OTU0IDIyLjgwNDEgMTQuODc1IDIyLjY4MTEgMTQuNzI3NiAyMi41OTlDMTQuNTc1IDIyLjUxMjMgMTQuMzY3NyAyMi40Njg0IDE0LjEwNTggMjIuNDY4NEMxMy44NDQ0IDIyLjQ2ODQgMTMuNjMzIDIyLjUxODkgMTMuNDcxNCAyMi42MTg3QzEzLjMwOTkgMjIuNzE5NiAxMy4xODMzIDIyLjg1MDMgMTMuMDkxOSAyMy4wMTE4QzEyLjk5NzQgMjMuMTgyNSAxMi45MzUzIDIzLjM2OTIgMTIuOTA4OSAyMy41NjI0QzEyLjg3ODEgMjMuNzY4NSAxMi44NjI2IDIzLjk3NjYgMTIuODYyNiAyNC4xODQ5VjI3Ljk1ODlIMTEuMDA0N1YyNC4xNTg4QzExLjAwNDcgMjMuOTU4IDExLjAwMDYgMjMuNzU5IDEwLjk5MjIgMjMuNTYyNEMxMC45ODU1IDIzLjM3NjEgMTAuOTQ3OCAyMy4xOTIzIDEwLjg4MDYgMjMuMDE4NEMxMC44MTY1IDIyLjg1NDEgMTAuNzAyMSAyMi43MTQyIDEwLjU1MzkgMjIuNjE4N0MxMC40MDA3IDIyLjUxODkgMTAuMTc2MiAyMi40Njg0IDkuODc5NzcgMjIuNDY4NEM5Ljc2MjA5IDIyLjQ3MzMgOS42NDU1MyAyMi40OTMzIDkuNTMyOSAyMi41Mjc4QzkuMzc5NDQgMjIuNTcyIDkuMjM2ODQgMjIuNjQ3NiA5LjExNDE2IDIyLjc0OTlDOC45Nzg3NCAyMi44NTkyIDguODYzNTIgMjMuMDE2NiA4Ljc2NzMgMjMuMjIxNUM4LjY3MTY3IDIzLjQyNyA4LjYyMzU2IDIzLjY5NTUgOC42MjM1NiAyNC4wMjc1VjI3Ljk1ODlINi43NjUwOFYyMS4xODE5TDguNTE4NDMgMjEuMTg0M1pNMTguMjk0OSAyMi4xODAzQzE4LjQ4MjYgMjEuODk1NyAxOC43MzMyIDIxLjY1NzkgMTkuMDI3MyAyMS40ODU0QzE5LjMzNzUgMjEuMzA1NSAxOS42NzU4IDIxLjE3OTIgMjAuMDI4MSAyMS4xMTE4QzIwLjM5NjUgMjEuMDM3OSAyMC43NzEzIDIxLjAwMDcgMjEuMTQ3MSAyMS4wMDA3QzIxLjQ4NzQgMjEuMDAwNyAyMS44MzE5IDIxLjAyNDUgMjIuMTgwNiAyMS4wNzI2QzIyLjUyOTggMjEuMTIwNyAyMi44NDgyIDIxLjIxNTEgMjMuMTM2MiAyMS4zNTQ3QzIzLjQyMzcgMjEuNDk0MyAyMy42NTg5IDIxLjY4ODUgMjMuODQzIDIxLjkzNzRDMjQuMDI2IDIyLjE4NjggMjQuMTE3NCAyMi41MTY1IDI0LjExNzQgMjIuOTI2OVYyNi40NTE0QzI0LjExNzQgMjYuNzU3OSAyNC4xMzUzIDI3LjA1MDEgMjQuMTY5NyAyNy4zMjkzQzI0LjIwNDIgMjcuNjA5MSAyNC4yNjUzIDI3LjgxODcgMjQuMzUyNyAyNy45NTg5SDIyLjQ2OTJDMjIuMzk4IDI3Ljc0NjggMjIuMzU0MSAyNy41MjY0IDIyLjMzODYgMjcuMzAzMkMyMi4wNDE2IDI3LjYwOTEgMjEuNjkyOSAyNy44MjM1IDIxLjI5MiAyNy45NDUyQzIwLjg5MzQgMjguMDY3MiAyMC40Nzg4IDI4LjEyOTMgMjAuMDYxOSAyOC4xMjk0QzE5LjczODggMjguMTI5NCAxOS40MzgzIDI4LjA4OTYgMTkuMTU5MSAyOC4wMTA2QzE4Ljg5MjggMjcuOTM4NyAxOC42NDM1IDI3LjgxNDEgMTguNDI2MiAyNy42NDQxQzE4LjIxNTIgMjcuNDc2MiAxOC4wNDcxIDI3LjI2MDYgMTcuOTM1NiAyNy4wMTUxQzE3LjgxNzQgMjYuNzYyMSAxNy43NTg2IDI2LjQ2MDMgMTcuNzU4NiAyNi4xMTExQzE3Ljc1ODYgMjUuNzI2OCAxNy44MjYzIDI1LjQxMDIgMTcuOTYxNyAyNS4xNjA4QzE4LjA5NjUgMjQuOTExOSAxOC4yNzA2IDI0LjcxMzUgMTguNDg1IDI0LjU2NDRDMTguNjk4OCAyNC40MTYgMTguOTQyOSAyNC4zMDQ5IDE5LjIxNzkgMjQuMjMwNkMxOS40OTIzIDI0LjE1NjQgMTkuNzY5NyAyNC4wOTc2IDIwLjA0ODkgMjQuMDUzNkMyMC4zMjggMjQuMDEwMyAyMC42MDI0IDIzLjk3NTIgMjAuODcyNyAyMy45NDkxQzIxLjE0MzUgMjMuOTIzIDIxLjM4MzUgMjMuODgzOCAyMS41OTI1IDIzLjgzMDlDMjEuODAyMiAyMy43Nzg2IDIxLjk2NzMgMjMuNzAyIDIyLjA4OTcgMjMuNjAxNkMyMi4yMTIgMjMuNTAxMyAyMi4yNjg1IDIzLjM1NTIgMjIuMjYwMiAyMy4xNjIxQzIyLjI2MDIgMjIuOTYyIDIyLjIyNzUgMjIuODAyMiAyMi4xNjE2IDIyLjY4NDZDMjIuMTAwNiAyMi41NzExIDIyLjAxMDMgMjIuNDc1OSAyMS45MDAyIDIyLjQwOUMyMS43ODM1IDIyLjM0MSAyMS42NTQ1IDIyLjI5NjYgMjEuNTIwNyAyMi4yNzgzQzIxLjM2NjkgMjIuMjU2IDIxLjIxMTYgMjIuMjQ1IDIxLjA1NjIgMjIuMjQ1NkMyMC42ODk3IDIyLjI0NTYgMjAuNDAyMyAyMi4zMjQgMjAuMTkyNiAyMi40ODE0QzE5Ljk4MzUgMjIuNjM4MyAxOS44NjEyIDIyLjkwMDggMTkuODI2MSAyMy4yNjcySDE3Ljk2ODJDMTcuOTk0NCAyMi44MzA3IDE4LjEwMzEgMjIuNDY4NCAxOC4yOTQ5IDIyLjE4MDNaTTIxLjk2NSAyNC44MDc0QzIxLjg0MDcgMjQuODQ4MiAyMS43MTM5IDI0Ljg4MDkgMjEuNTg1NCAyNC45MDU0QzIxLjQ0NDUgMjQuOTMyNSAyMS4zMDI3IDI0Ljk1NDIgMjEuMTYwMiAyNC45NzA3QzIxLjAxMTcgMjQuOTg4NSAyMC44NjMyIDI1LjAxMDUgMjAuNzE1MyAyNS4wMzZDMjAuNTc1OCAyNS4wNjIzIDIwLjQzODEgMjUuMDk3NCAyMC4zMDMxIDI1LjE0MTJDMjAuMTc2NyAyNS4xODA3IDIwLjA1NzUgMjUuMjQwNCAxOS45NTAzIDI1LjMxODJDMTkuODQ5MyAyNS4zOTI0IDE5Ljc2OTEgMjUuNDg2OSAxOS43MDc5IDI1LjU5OTdDMTkuNjQ2OCAyNS43MTM3IDE5LjYxNjUgMjUuODU3NSAxOS42MTY1IDI2LjAzMjFDMTkuNjE2NSAyNi4xOTg0IDE5LjY0NjggMjYuMzM4IDE5LjcwNzkgMjYuNDUxNEMxOS43NjkxIDI2LjU2NTUgMTkuODUxNyAyNi42NTQ2IDE5Ljk1NjggMjYuNzIwNUMyMC4wNjEzIDI2Ljc4NTggMjAuMTgzMSAyNi44MzE2IDIwLjMyMzMgMjYuODU3N0MyMC40NjIzIDI2Ljg4MzggMjAuNjA2NiAyNi44OTY5IDIwLjc1NDUgMjYuODk2OUMyMS4xMjA5IDI2Ljg5NjkgMjEuNDA0MyAyNi44MzYzIDIxLjYwNSAyNi43MTM0QzIxLjgwNTggMjYuNTkxNiAyMS45NTM3IDI2LjQ0NDkgMjIuMDUwNSAyNi4yNzQ0QzIyLjE0NTUgMjYuMTA0NiAyMi4yMDQ5IDI1LjkzMjMgMjIuMjI2OSAyNS43NTc3QzIyLjI0ODMgMjUuNTgyNSAyMi4yNTk2IDI1LjQ0MjkgMjIuMjU5NiAyNS4zMzc4VjI0LjY0MjhDMjIuMTczNiAyNC43MTcyIDIyLjA3MzQgMjQuNzczMiAyMS45NjUgMjQuODA3NFpNMjkuMDA5MyAyMS4xODQzVjIyLjQyOTJIMjcuNjQ4NVYyNS43ODMyQzI3LjY0ODUgMjYuMDk4IDI3LjcwMDggMjYuMzA3NyAyNy44MDUzIDI2LjQxMjJDMjcuOTA5OCAyNi41MTc0IDI4LjExOTUgMjYuNTY5NiAyOC40MzMxIDI2LjU2OTZDMjguNTM4MiAyNi41Njk2IDI4LjYzOCAyNi41NjU1IDI4LjczNDMgMjYuNTU2NkMyOC44Mjk5IDI2LjU0NzcgMjguOTIxOSAyNi41MzQ2IDI5LjAwOTMgMjYuNTE3NFYyNy45NTgzQzI4LjgzNTggMjcuOTg2MiAyOC42NjA5IDI4LjAwMzkgMjguNDg1NCAyOC4wMTEyQzI4LjI5OCAyOC4wMTk2IDI4LjExMDUgMjguMDI0IDI3LjkyMjkgMjguMDI0MkMyNy42MzU0IDI4LjAyNDIgMjcuMzYyMiAyOC4wMDQgMjcuMTA1IDI3Ljk2NDhDMjYuODY2IDI3LjkzMTggMjYuNjM1MiAyNy44NTQgMjYuNDI1IDI3LjczNTZDMjYuMjI3NiAyNy42MjEgMjYuMDY2NiAyNy40NTMgMjUuOTYwNSAyNy4yNTA5QzI1Ljg0NyAyNy4wNDEyIDI1Ljc5IDI2Ljc2NjIgMjUuNzkgMjYuNDI1M1YyMi40MjkySDI0LjY2NTFWMjEuMTg0M0gyNS43OVYxOS4xNTI5SDI3LjY0ODVWMjEuMTg0M0gyOS4wMDkzWk0zMS42NjQ4IDIxLjE4NDNWMjIuNDQyMkgzMS42OTFDMzEuODY4OSAyMi4wMTY5IDMyLjE2OTYgMjEuNjU0MiAzMi41NTQ2IDIxLjQwMDVDMzIuNzQ1MiAyMS4yNzQ0IDMyLjk1MjMgMjEuMTc1MSAzMy4xNjk5IDIxLjEwNTNDMzMuMzg5OCAyMS4wMzUyIDMzLjYxOTIgMjEgMzMuODUgMjEuMDAwN0MzMy45NzIzIDIxLjAwMDcgMzQuMTA3MiAyMS4wMjI3IDM0LjI1NTcgMjEuMDY2MVYyMi43OTU2QzM0LjE1MTkgMjIuNzc1NyAzNC4wNDcyIDIyLjc2MDQgMzMuOTQyIDIyLjc0OTlDMzMuODI0NyAyMi43MzcxIDMzLjcwNjcgMjIuNzMwNSAzMy41ODg2IDIyLjczMDNDMzMuMjQ4MyAyMi43MzAzIDMyLjk2MDIgMjIuNzg3MyAzMi43MjUgMjIuOTAwOEMzMi40OTk3IDIzLjAwNjEgMzIuMzA0MSAyMy4xNjU5IDMyLjE1NiAyMy4zNjU4QzMyLjAwNzggMjMuNTcxOCAzMS45MDMxIDIzLjgwNTggMzEuODQ4NCAyNC4wNTM2QzMxLjc4NTUgMjQuMzMzMSAzMS43NTQ4IDI0LjYxODkgMzEuNzU2OSAyNC45MDU0VjI3Ljk1ODNIMjkuODk5VjIxLjE4NzJMMzEuNjY0OCAyMS4xODQzWk0zNS4wNDA5IDIwLjEzNTlWMTguNjAyM0gzNi44OTg3VjIwLjEzNTlIMzUuMDQwOVpNMzYuODk4NyAyMS4xODQzVjI3Ljk1NTNIMzUuMDQxNVYyMS4xODQzSDM2Ljg5ODdaTTM3Ljg2NjkgMjEuMTg0M0gzOS45ODY3TDQxLjE3NzYgMjIuOTUzTDQyLjM1NDggMjEuMTg0M0g0NC40MDkzTDQyLjE4NDkgMjQuMzU1NEw0NC42ODQzIDI3Ljk1ODlINDIuNTYzOUw0MS4xNTE1IDI1LjgyM0wzOS43Mzc4IDI3Ljk1ODlIMzcuNjU3OEw0MC4wOTEzIDI0LjM5NDZMMzcuODY2OSAyMS4xODQzWk00Ni45NTQ0IDMzLjU2MjNWMTUuNDM0OEg0NS42NTEzVjE1SDQ3LjQ1MzlWMzMuOTk0N0g0NS42NTEzVjMzLjU1OTlMNDYuOTU0NCAzMy41NjIzWiIgZmlsbD0iIzA0MDQwNCIvPgo8L2c+CjxkZWZzPgo8Y2xpcFBhdGggaWQ9ImNsaXAwXzE1NF82Ij4KPHJlY3Qgd2lkdGg9IjUwIiBoZWlnaHQ9IjUwIiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo=" } ] } \ No newline at end of file diff --git a/matrix/domain-matrix-admin.json b/matrix/domain-matrix-admin.json new file mode 100644 index 0000000..bfb1abf --- /dev/null +++ b/matrix/domain-matrix-admin.json @@ -0,0 +1,60 @@ +{ + "main": { + "SERVICE_NAME": "matrix", + "DOMAIN": "#DOMAIN" + }, + "containers": [ + { + "IMAGE": "safebox/domain-check", + "UPDATE": "true", + "MEMORY": "64M", + "NAME": "domain_checker", + "ROLES": "domain_checker", + "NETWORK": "host", + "SELECTOR": "", + "SCALE": "0", + "EXTRA": "--rm --privileged", + "PRE_START": [], + "DEPEND": [], + "POST_START": [], + "CMD": "", + "ENVS": [ + { + "PROXY": "smarthostloadbalancer" + }, + { + "TARGET": "matrixadmin" + }, + { + "PORT": "80" + }, + { + "DOMAIN": "#DOMAIN" + }, + { + "SMARTHOST_PROXY_PATH": "/smarthost-domains" + }, + { + "OPERATION": "CREATE" + } + ], + "VOLUMES": [ + { + "SOURCE": "/etc/user/config/smarthost-domains", + "DEST": "/smarthost-domains", + "TYPE": "rw" + }, + { + "SOURCE": "/etc/system/data/dns/hosts.local", + "DEST": "/etc/dns/hosts.local", + "TYPE": "ro" + }, + { + "SOURCE": "/var/run/docker.sock", + "DEST": "/var/run/docker.sock", + "TYPE": "rw" + } + ] + } + ] +} \ No newline at end of file diff --git a/matrix/firewall-matrix-admin.json b/matrix/firewall-matrix-admin.json new file mode 100644 index 0000000..bae89cb --- /dev/null +++ b/matrix/firewall-matrix-admin.json @@ -0,0 +1,75 @@ +{ + "main": { + "SERVICE_NAME": "firewalls", + "DOMAIN": "null" + }, + "containers": [ + { + "IMAGE": "safebox/firewall", + "NAME": "firewall", + "MEMORY": "64M", + "NETWORK": "host", + "SCALE": "0", + "VOLUMES": [ + { + "SOURCE": "/run/", + "DEST": "/run/", + "TYPE": "rw" + }, + { + "SOURCE": "/etc/user/config/services", + "DEST": "/services", + "TYPE": "ro" + }, + { + "SOURCE": "/etc/system/data/dns/hosts.local", + "DEST": "/etc/dns/hosts.local", + "TYPE": "ro" + }, + { + "SOURCE": "/var/run/docker.sock", + "DEST": "/var/run/docker.sock", + "TYPE": "rw" + } + ], + "PORTS": [], + "READYNESS": [ + { + "tcp": "" + }, + { + "HTTP": "" + }, + { + "EXEC": "/ready.sh" + } + ], + "ENVS": [ + { + "CHAIN": "DOCKER-USER" + }, + { + "SOURCE": "smarthostbackend" + }, + { + "TARGET": "matrixadmin" + }, + { + "TYPE": "tcp" + }, + { + "TARGET_PORT": "80" + }, + { + "COMMENT": "matrixadmin for proxy" + } + ], + "EXTRA": "--privileged --rm", + "DEPEND": "null", + "START_ON_BOOT": "false", + "CMD": "null", + "PRE_START": "null", + "POST_START": "null" + } + ] +} \ No newline at end of file diff --git a/matrix/firewall-matrix-dns.json b/matrix/firewall-matrix-dns.json new file mode 100644 index 0000000..055997b --- /dev/null +++ b/matrix/firewall-matrix-dns.json @@ -0,0 +1,76 @@ +{ + "main": { + "SERVICE_NAME": "firewalls", + "DOMAIN": "null" + }, + "containers": [ + { + "IMAGE": "safebox/firewall", + "UPDATE": "true", + "NAME": "firewall", + "MEMORY": "64M", + "NETWORK": "host", + "SCALE": "0", + "VOLUMES": [ + { + "SOURCE": "/run/", + "DEST": "/run/", + "TYPE": "rw" + }, + { + "SOURCE": "/etc/user/config/services", + "DEST": "/services", + "TYPE": "ro" + }, + { + "SOURCE": "/etc/system/data/dns/hosts.local", + "DEST": "/etc/dns/hosts.local", + "TYPE": "ro" + }, + { + "SOURCE": "/var/run/docker.sock", + "DEST": "/var/run/docker.sock", + "TYPE": "rw" + } + ], + "PORTS": [], + "READYNESS": [ + { + "tcp": "" + }, + { + "HTTP": "" + }, + { + "EXEC": "/ready.sh" + } + ], + "ENVS": [ + { + "CHAIN": "DOCKER-USER" + }, + { + "SOURCE": "matrixserver" + }, + { + "TARGET": "coredns" + }, + { + "TYPE": "udp" + }, + { + "TARGET_PORT": "53" + }, + { + "COMMENT": "matrix nginx access for local dns" + } + ], + "EXTRA": "--privileged --rm", + "DEPEND": "null", + "START_ON_BOOT": "false", + "CMD": "", + "PRE_START": [], + "POST_START": [] + } + ] +} \ No newline at end of file diff --git a/matrix/firewall-matrix-smtp.json b/matrix/firewall-matrix-smtp.json new file mode 100644 index 0000000..940132f --- /dev/null +++ b/matrix/firewall-matrix-smtp.json @@ -0,0 +1,75 @@ +{ + "main": { + "SERVICE_NAME": "firewalls", + "DOMAIN": "null" + }, + "containers": [ + { + "IMAGE": "safebox/firewall", + "NAME": "firewall", + "MEMORY": "64M", + "NETWORK": "host", + "SCALE": "0", + "VOLUMES": [ + { + "SOURCE": "/run/", + "DEST": "/run/", + "TYPE": "rw" + }, + { + "SOURCE": "/etc/user/config/services", + "DEST": "/services", + "TYPE": "ro" + }, + { + "SOURCE": "/etc/system/data/dns/hosts.local", + "DEST": "/etc/dns/hosts.local", + "TYPE": "ro" + }, + { + "SOURCE": "/var/run/docker.sock", + "DEST": "/var/run/docker.sock", + "TYPE": "rw" + } + ], + "PORTS": [], + "READYNESS": [ + { + "tcp": "" + }, + { + "HTTP": "" + }, + { + "EXEC": "/ready.sh" + } + ], + "ENVS": [ + { + "CHAIN": "DOCKER-USER" + }, + { + "SOURCE": "matrixserver" + }, + { + "TARGET": "smtp" + }, + { + "TYPE": "tcp" + }, + { + "TARGET_PORT": "25" + }, + { + "COMMENT": "matrix to smtp" + } + ], + "EXTRA": "--privileged --rm", + "DEPEND": "null", + "START_ON_BOOT": "false", + "CMD": "null", + "PRE_START": "null", + "POST_START": "null" + } + ] +} \ No newline at end of file diff --git a/matrix/firewall-matrix.json b/matrix/firewall-matrix.json new file mode 100644 index 0000000..c96c118 --- /dev/null +++ b/matrix/firewall-matrix.json @@ -0,0 +1,75 @@ +{ + "main": { + "SERVICE_NAME": "firewalls", + "DOMAIN": "null" + }, + "containers": [ + { + "IMAGE": "safebox/firewall", + "NAME": "firewall", + "MEMORY": "64M", + "NETWORK": "host", + "SCALE": "0", + "VOLUMES": [ + { + "SOURCE": "/run/", + "DEST": "/run/", + "TYPE": "rw" + }, + { + "SOURCE": "/etc/user/config/services", + "DEST": "/services", + "TYPE": "ro" + }, + { + "SOURCE": "/etc/system/data/dns/hosts.local", + "DEST": "/etc/dns/hosts.local", + "TYPE": "ro" + }, + { + "SOURCE": "/var/run/docker.sock", + "DEST": "/var/run/docker.sock", + "TYPE": "rw" + } + ], + "PORTS": [], + "READYNESS": [ + { + "tcp": "" + }, + { + "HTTP": "" + }, + { + "EXEC": "/ready.sh" + } + ], + "ENVS": [ + { + "CHAIN": "DOCKER-USER" + }, + { + "SOURCE": "smarthostbackend" + }, + { + "TARGET": "matrixserver" + }, + { + "TYPE": "tcp" + }, + { + "TARGET_PORT": "8008" + }, + { + "COMMENT": "matrix" + } + ], + "EXTRA": "--privileged --rm", + "DEPEND": "null", + "START_ON_BOOT": "false", + "CMD": "null", + "PRE_START": "null", + "POST_START": "null" + } + ] +} \ No newline at end of file diff --git a/matrix/matrix-secret.json b/matrix/matrix-secret.json new file mode 100644 index 0000000..d3b593f --- /dev/null +++ b/matrix/matrix-secret.json @@ -0,0 +1,24 @@ +{ + "matrixpostgres": { + "POSTGRES_DB": "#POSTGRES_DB", + "POSTGRES_USER": "#POSTGRES_USER", + "POSTGRES_PASSWORD": "#POSTGRES_PASSWORD", + "POSTGRES_ROOT_PASSWORD": "#POSTGRES_ROOT_PASSWORD" + }, + "matrixserver": { + "DB_TYPE": "psycopg2", + "POSTGRES_DB": "#POSTGRES_DB", + "POSTGRES_USER": "#POSTGRES_USER", + "POSTGRES_PASSWORD": "#POSTGRES_PASSWORD", + "POSTGRES_HOST": "matrixpostgres-db", + "DB_PORT": "5432", + "SYNAPSE_SERVER_NAME": "#DOMAIN", + "SYNAPSE_REPORT_STATS": "no", + "ADMIN_USERNAME": "#ADMIN_USERNAME", + "ADMIN_PASSWORD": "#ADMIN_PASSWORD" + }, + "matrixadmin": { + "REACT_APP_SERVER": "https://#DOMAIN", + "BASE_PATH": "/synapse-admin" + } +} \ No newline at end of file diff --git a/matrix/service-matrix.json b/matrix/service-matrix.json new file mode 100644 index 0000000..fafa83c --- /dev/null +++ b/matrix/service-matrix.json @@ -0,0 +1,201 @@ +{ + "main": { + "SERVICE_NAME": "matrix", + "DOMAIN": "DOMAIN" + }, + "containers": [ + { + "IMAGE": "alpine:latest", + "UPDATE": "true", + "NAME": "matrix-init", + "NETWORK": "host", + "MEMORY": "64M", + "VOLUMES": [ + { + "SOURCE": "USER_DATA", + "DEST": "/etc/user/data", + "TYPE": "rw" + } + ], + "ENV_FILES": [ + "/etc/user/secret/matrix/matrix.json" + ], + "EXTRA": "--rm", + "DEPEND": "null", + "START_ON_BOOT": "false", + "ENTRYPOINT": "sh -c", + "CMD": "mkdir -p /etc/user/data/matrix/db && mkdir -p /etc/user/data/matrix/synapse", + "PRE_START": "null", + "POST_START": "null" + }, + { + "IMAGE": "postgres:alpine", + "UPDATE": "true", + "NAME": "matrixpostgres-db", + "ROLES": "postgres-db", + "MEMORY": "256M", + "NETWORK": "matrix-net", + "SELECTOR": "matrixpostgres-db", + "VOLUMES": [ + { + "SOURCE": "/etc/user/data/matrix/postgresql", + "DEST": "/var/lib/postgresql/data", + "TYPE": "rw" + } + ], + "PORTS": [ + { + "SOURCE": "null", + "DEST": "5432", + "TYPE": "tcp" + } + ], + "ENV_FILES": [ + "/etc/user/secret/matrix/matrix.json" + ], + "ENVS": [ + { + "POSTGRES_INITDB_ARGS": "--encoding=UTF-8 --lc-collate=C --lc-ctype=C" + } + ], + "EXTRA": "--restart unless-stopped", + "DEPEND": "null", + "START_ON_BOOT": "false", + "CMD": "null", + "PRE_START": [], + "POST_START": [] + }, + { + "IMAGE": "matrixdotorg/synapse", + "UPDATE": "true", + "NAME": "matrixserver-init", + "ROLES": "backend-www", + "MEMORY": "512M", + "NETWORK": "matrix-net", + "VOLUMES": [ + { + "SOURCE": "/etc/user/data/matrix/synapse", + "DEST": "/data", + "TYPE": "rw" + } + ], + "ENV_FILES": [ + "/etc/user/secret/matrix/matrix.json" + ], + "EXTRA": "--rm", + "DEPEND": "null", + "START_ON_BOOT": "false", + "ENTRYPOINT": "sh -c", + "CMD": "if [ ! -f /data/homeserver.yaml ]; then generate ; fi", + "PRE_START": [], + "POST_START": [] + }, + { + "IMAGE": "safebox/matrix-setup:latest", + "UPDATE": "true", + "NAME": "matrix-setup", + "NETWORK": "host", + "MEMORY": "64M", + "VOLUMES": [ + { + "SOURCE": "/etc/user/data/matrix/synapse", + "DEST": "/data", + "TYPE": "rw" + } + ], + "ENV_FILES": [ + "/etc/user/secret/matrix/matrix.json" + ], + "EXTRA": "--rm", + "DEPEND": "null", + "START_ON_BOOT": "false", + "CMD": "null", + "PRE_START": "null", + "POST_START": "null" + }, + { + "IMAGE": "matrixdotorg/synapse", + "UPDATE": "true", + "NAME": "matrixserver", + "ROLES": "backend-www", + "MEMORY": "512M", + "NETWORK": "matrix-net", + "SELECTOR": "matrixserver", + "VOLUMES": [ + { + "SOURCE": "/etc/user/data/matrix/synapse", + "DEST": "/data", + "TYPE": "rw" + } + ], + "PORTS": [ + { + "SOURCE": "null", + "DEST": "8008", + "TYPE": "tcp" + } + ], + "ENV_FILES": [ + "/etc/user/secret/matrix/matrix.json" + ], + "EXTRA": "--restart unless-stopped", + "DEPEND": "null", + "START_ON_BOOT": "false", + "CMD": "null", + "PRE_START": [], + "POST_START": [ + "firewall-matrix", + "domain-matrix" + ] + }, + { + "IMAGE": "awesometechnologies/synapse-admin", + "UPDATE": "true", + "NAME": "matrixadmin", + "ROLES": "backend-www", + "MEMORY": "128M", + "NETWORK": "matrix-net", + "SELECTOR": "matrixadmin", + "VOLUMES": [], + "PORTS": [ + { + "SOURCE": "null", + "DEST": "80", + "TYPE": "tcp" + } + ], + "EXTRA": "--restart unless-stopped", + "DEPEND": "null", + "START_ON_BOOT": "false", + "CMD": "null", + "PRE_START": [], + "POST_START": [ + "firewall-matrix-admin", + "domain-matrix-admin" + ] + }, + { + "IMAGE": "safebox/matrix-setup:latest", + "UPDATE": "true", + "NAME": "matrix-setup", + "NETWORK": "host", + "MEMORY": "64M", + "VOLUMES": [ + { + "SOURCE": "/etc/user/data/matrix/synapse", + "DEST": "/data", + "TYPE": "ro" + } + ], + "ENV_FILES": [ + "/etc/user/secret/matrix/matrix.json" + ], + "EXTRA": "--rm", + "DEPEND": "null", + "START_ON_BOOT": "false", + "CMD": "null", + "PRE_START": "null", + "POST_START": "null" + } + ] +} \ No newline at end of file diff --git a/matrix/template.json b/matrix/template.json new file mode 100644 index 0000000..001dee5 --- /dev/null +++ b/matrix/template.json @@ -0,0 +1,42 @@ +{ + "name": "Matrix", + "title": "matrix", + "subtitle": "Communication", + "icon": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTAiIGhlaWdodD0iNTAiIHZpZXdCb3g9IjAgMCA1MCA1MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHJlY3Qgd2lkdGg9IjUwIiBoZWlnaHQ9IjUwIiByeD0iNyIgZmlsbD0id2hpdGUiLz4KPHBhdGggZD0iTTMuNDk5NTIgMTUuNDM3N1YzMy41NjUySDQuODAyNjVWMzRIM1YxNS4wMDUzSDQuODAyMDZWMTUuNDQwMUwzLjQ5OTUyIDE1LjQzNzdaTTguNTE4NDMgMjEuMTg0M1YyMi4xMDEzSDguNTQ0NTZDOC43NzI5NSAyMS43NjY1IDkuMDc1MSAyMS40ODg1IDkuNDI3NzcgMjEuMjg4OEM5Ljc3MjI3IDIxLjA5NjkgMTAuMTY3MiAyMS4wMDA3IDEwLjYxMTUgMjEuMDAwN0MxMS4wMzkyIDIxLjAwMDcgMTEuNDI5NCAyMS4wODM5IDExLjc4MjggMjEuMjUwMkMxMi4xMzYyIDIxLjQxNTkgMTIuNDA0NyAyMS43MDgxIDEyLjU4NzYgMjIuMTI3NUMxMi43ODg0IDIxLjgzMDUgMTMuMDYwNCAyMS41Njg1IDEzLjQwNTUgMjEuMzQxNkMxMy43NSAyMS4xMTQyIDE0LjE1NzQgMjEuMDAwNyAxNC42MjkgMjEuMDAwN0MxNC45ODY2IDIxLjAwMDcgMTUuMzE4IDIxLjA0NDcgMTUuNjIzMyAyMS4xMzE0QzE1LjkyODYgMjEuMjE5MyAxNi4xODk5IDIxLjM1ODkgMTYuNDA4NSAyMS41NTEzQzE2LjYyNTkgMjEuNzQzMiAxNi43OTY0IDIxLjk5NDQgMTYuOTE4NyAyMi4zMDQ0QzE3LjA0MDUgMjIuNjE0NSAxNy4xMDE3IDIyLjk4NzUgMTcuMTAxNyAyMy40MjUyVjI3Ljk1ODlIMTUuMjQ0NFYyNC4xMTk2QzE1LjI0NDQgMjMuODkyMSAxNS4yMzU1IDIzLjY3ODMgMTUuMjE4MiAyMy40NzY5QzE1LjIwNTggMjMuMjk0NCAxNS4xNTY5IDIzLjExNjMgMTUuMDc0NSAyMi45NTNDMTQuOTk1NCAyMi44MDQxIDE0Ljg3NSAyMi42ODExIDE0LjcyNzYgMjIuNTk5QzE0LjU3NSAyMi41MTIzIDE0LjM2NzcgMjIuNDY4NCAxNC4xMDU4IDIyLjQ2ODRDMTMuODQ0NCAyMi40Njg0IDEzLjYzMyAyMi41MTg5IDEzLjQ3MTQgMjIuNjE4N0MxMy4zMDk5IDIyLjcxOTYgMTMuMTgzMyAyMi44NTAzIDEzLjA5MTkgMjMuMDExOEMxMi45OTc0IDIzLjE4MjUgMTIuOTM1MyAyMy4zNjkyIDEyLjkwODkgMjMuNTYyNEMxMi44NzgxIDIzLjc2ODUgMTIuODYyNiAyMy45NzY2IDEyLjg2MjYgMjQuMTg0OVYyNy45NTg5SDExLjAwNDdWMjQuMTU4OEMxMS4wMDQ3IDIzLjk1OCAxMS4wMDA2IDIzLjc1OSAxMC45OTIyIDIzLjU2MjRDMTAuOTg1NSAyMy4zNzYxIDEwLjk0NzggMjMuMTkyMyAxMC44ODA2IDIzLjAxODRDMTAuODE2NSAyMi44NTQxIDEwLjcwMjEgMjIuNzE0MiAxMC41NTM5IDIyLjYxODdDMTAuNDAwNyAyMi41MTg5IDEwLjE3NjIgMjIuNDY4NCA5Ljg3OTc3IDIyLjQ2ODRDOS43NjIwOSAyMi40NzMzIDkuNjQ1NTMgMjIuNDkzMyA5LjUzMjkgMjIuNTI3OEM5LjM3OTQ0IDIyLjU3MiA5LjIzNjg0IDIyLjY0NzYgOS4xMTQxNiAyMi43NDk5QzguOTc4NzQgMjIuODU5MiA4Ljg2MzUyIDIzLjAxNjYgOC43NjczIDIzLjIyMTVDOC42NzE2NyAyMy40MjcgOC42MjM1NiAyMy42OTU1IDguNjIzNTYgMjQuMDI3NVYyNy45NTg5SDYuNzY1MDhWMjEuMTgxOUw4LjUxODQzIDIxLjE4NDNaTTE4LjI5NDkgMjIuMTgwM0MxOC40ODI2IDIxLjg5NTcgMTguNzMzMiAyMS42NTc5IDE5LjAyNzMgMjEuNDg1NEMxOS4zMzc1IDIxLjMwNTUgMTkuNjc1OCAyMS4xNzkyIDIwLjAyODEgMjEuMTExOEMyMC4zOTY1IDIxLjAzNzkgMjAuNzcxMyAyMS4wMDA3IDIxLjE0NzEgMjEuMDAwN0MyMS40ODc0IDIxLjAwMDcgMjEuODMxOSAyMS4wMjQ1IDIyLjE4MDYgMjEuMDcyNkMyMi41Mjk4IDIxLjEyMDcgMjIuODQ4MiAyMS4yMTUxIDIzLjEzNjIgMjEuMzU0N0MyMy40MjM3IDIxLjQ5NDMgMjMuNjU4OSAyMS42ODg1IDIzLjg0MyAyMS45Mzc0QzI0LjAyNiAyMi4xODY4IDI0LjExNzQgMjIuNTE2NSAyNC4xMTc0IDIyLjkyNjlWMjYuNDUxNEMyNC4xMTc0IDI2Ljc1NzkgMjQuMTM1MyAyNy4wNTAxIDI0LjE2OTcgMjcuMzI5M0MyNC4yMDQyIDI3LjYwOTEgMjQuMjY1MyAyNy44MTg3IDI0LjM1MjcgMjcuOTU4OUgyMi40NjkyQzIyLjM5OCAyNy43NDY4IDIyLjM1NDEgMjcuNTI2NCAyMi4zMzg2IDI3LjMwMzJDMjIuMDQxNiAyNy42MDkxIDIxLjY5MjkgMjcuODIzNSAyMS4yOTIgMjcuOTQ1MkMyMC44OTM0IDI4LjA2NzIgMjAuNDc4OCAyOC4xMjkzIDIwLjA2MTkgMjguMTI5NEMxOS43Mzg4IDI4LjEyOTQgMTkuNDM4MyAyOC4wODk2IDE5LjE1OTEgMjguMDEwNkMxOC44OTI4IDI3LjkzODcgMTguNjQzNSAyNy44MTQxIDE4LjQyNjIgMjcuNjQ0MUMxOC4yMTUyIDI3LjQ3NjIgMTguMDQ3MSAyNy4yNjA2IDE3LjkzNTYgMjcuMDE1MUMxNy44MTc0IDI2Ljc2MjEgMTcuNzU4NiAyNi40NjAzIDE3Ljc1ODYgMjYuMTExMUMxNy43NTg2IDI1LjcyNjggMTcuODI2MyAyNS40MTAyIDE3Ljk2MTcgMjUuMTYwOEMxOC4wOTY1IDI0LjkxMTkgMTguMjcwNiAyNC43MTM1IDE4LjQ4NSAyNC41NjQ0QzE4LjY5ODggMjQuNDE2IDE4Ljk0MjkgMjQuMzA0OSAxOS4yMTc5IDI0LjIzMDZDMTkuNDkyMyAyNC4xNTY0IDE5Ljc2OTcgMjQuMDk3NiAyMC4wNDg5IDI0LjA1MzZDMjAuMzI4IDI0LjAxMDMgMjAuNjAyNCAyMy45NzUyIDIwLjg3MjcgMjMuOTQ5MUMyMS4xNDM1IDIzLjkyMyAyMS4zODM1IDIzLjg4MzggMjEuNTkyNSAyMy44MzA5QzIxLjgwMjIgMjMuNzc4NiAyMS45NjczIDIzLjcwMiAyMi4wODk3IDIzLjYwMTZDMjIuMjEyIDIzLjUwMTMgMjIuMjY4NSAyMy4zNTUyIDIyLjI2MDIgMjMuMTYyMUMyMi4yNjAyIDIyLjk2MiAyMi4yMjc1IDIyLjgwMjIgMjIuMTYxNiAyMi42ODQ2QzIyLjEwMDYgMjIuNTcxMSAyMi4wMTAzIDIyLjQ3NTkgMjEuOTAwMiAyMi40MDlDMjEuNzgzNSAyMi4zNDEgMjEuNjU0NSAyMi4yOTY2IDIxLjUyMDcgMjIuMjc4M0MyMS4zNjY5IDIyLjI1NiAyMS4yMTE2IDIyLjI0NSAyMS4wNTYyIDIyLjI0NTZDMjAuNjg5NyAyMi4yNDU2IDIwLjQwMjMgMjIuMzI0IDIwLjE5MjYgMjIuNDgxNEMxOS45ODM1IDIyLjYzODMgMTkuODYxMiAyMi45MDA4IDE5LjgyNjEgMjMuMjY3MkgxNy45NjgyQzE3Ljk5NDQgMjIuODMwNyAxOC4xMDMxIDIyLjQ2ODQgMTguMjk0OSAyMi4xODAzWk0yMS45NjUgMjQuODA3NEMyMS44NDA3IDI0Ljg0ODIgMjEuNzEzOSAyNC44ODA5IDIxLjU4NTQgMjQuOTA1NEMyMS40NDQ1IDI0LjkzMjUgMjEuMzAyNyAyNC45NTQyIDIxLjE2MDIgMjQuOTcwN0MyMS4wMTE3IDI0Ljk4ODUgMjAuODYzMiAyNS4wMTA1IDIwLjcxNTMgMjUuMDM2QzIwLjU3NTggMjUuMDYyMyAyMC40MzgxIDI1LjA5NzQgMjAuMzAzMSAyNS4xNDEyQzIwLjE3NjcgMjUuMTgwNyAyMC4wNTc1IDI1LjI0MDQgMTkuOTUwMyAyNS4zMTgyQzE5Ljg0OTMgMjUuMzkyNCAxOS43NjkxIDI1LjQ4NjkgMTkuNzA3OSAyNS41OTk3QzE5LjY0NjggMjUuNzEzNyAxOS42MTY1IDI1Ljg1NzUgMTkuNjE2NSAyNi4wMzIxQzE5LjYxNjUgMjYuMTk4NCAxOS42NDY4IDI2LjMzOCAxOS43MDc5IDI2LjQ1MTRDMTkuNzY5MSAyNi41NjU1IDE5Ljg1MTcgMjYuNjU0NiAxOS45NTY4IDI2LjcyMDVDMjAuMDYxMyAyNi43ODU4IDIwLjE4MzEgMjYuODMxNiAyMC4zMjMzIDI2Ljg1NzdDMjAuNDYyMyAyNi44ODM4IDIwLjYwNjYgMjYuODk2OSAyMC43NTQ1IDI2Ljg5NjlDMjEuMTIwOSAyNi44OTY5IDIxLjQwNDMgMjYuODM2MyAyMS42MDUgMjYuNzEzNEMyMS44MDU4IDI2LjU5MTYgMjEuOTUzNyAyNi40NDQ5IDIyLjA1MDUgMjYuMjc0NEMyMi4xNDU1IDI2LjEwNDYgMjIuMjA0OSAyNS45MzIzIDIyLjIyNjkgMjUuNzU3N0MyMi4yNDgzIDI1LjU4MjUgMjIuMjU5NiAyNS40NDI5IDIyLjI1OTYgMjUuMzM3OFYyNC42NDI4QzIyLjE3MzYgMjQuNzE3MiAyMi4wNzM0IDI0Ljc3MzIgMjEuOTY1IDI0LjgwNzRaTTI5LjAwOTMgMjEuMTg0M1YyMi40MjkySDI3LjY0ODVWMjUuNzgzMkMyNy42NDg1IDI2LjA5OCAyNy43MDA4IDI2LjMwNzcgMjcuODA1MyAyNi40MTIyQzI3LjkwOTggMjYuNTE3NCAyOC4xMTk1IDI2LjU2OTYgMjguNDMzMSAyNi41Njk2QzI4LjUzODIgMjYuNTY5NiAyOC42MzggMjYuNTY1NSAyOC43MzQzIDI2LjU1NjZDMjguODI5OSAyNi41NDc3IDI4LjkyMTkgMjYuNTM0NiAyOS4wMDkzIDI2LjUxNzRWMjcuOTU4M0MyOC44MzU4IDI3Ljk4NjIgMjguNjYwOSAyOC4wMDM5IDI4LjQ4NTQgMjguMDExMkMyOC4yOTggMjguMDE5NiAyOC4xMTA1IDI4LjAyNCAyNy45MjI5IDI4LjAyNDJDMjcuNjM1NCAyOC4wMjQyIDI3LjM2MjIgMjguMDA0IDI3LjEwNSAyNy45NjQ4QzI2Ljg2NiAyNy45MzE4IDI2LjYzNTIgMjcuODU0IDI2LjQyNSAyNy43MzU2QzI2LjIyNzYgMjcuNjIxIDI2LjA2NjYgMjcuNDUzIDI1Ljk2MDUgMjcuMjUwOUMyNS44NDcgMjcuMDQxMiAyNS43OSAyNi43NjYyIDI1Ljc5IDI2LjQyNTNWMjIuNDI5MkgyNC42NjUxVjIxLjE4NDNIMjUuNzlWMTkuMTUyOUgyNy42NDg1VjIxLjE4NDNIMjkuMDA5M1pNMzEuNjY0OCAyMS4xODQzVjIyLjQ0MjJIMzEuNjkxQzMxLjg2ODkgMjIuMDE2OSAzMi4xNjk2IDIxLjY1NDIgMzIuNTU0NiAyMS40MDA1QzMyLjc0NTIgMjEuMjc0NCAzMi45NTIzIDIxLjE3NTEgMzMuMTY5OSAyMS4xMDUzQzMzLjM4OTggMjEuMDM1MiAzMy42MTkyIDIxIDMzLjg1IDIxLjAwMDdDMzMuOTcyMyAyMS4wMDA3IDM0LjEwNzIgMjEuMDIyNyAzNC4yNTU3IDIxLjA2NjFWMjIuNzk1NkMzNC4xNTE5IDIyLjc3NTcgMzQuMDQ3MiAyMi43NjA0IDMzLjk0MiAyMi43NDk5QzMzLjgyNDcgMjIuNzM3MSAzMy43MDY3IDIyLjczMDUgMzMuNTg4NiAyMi43MzAzQzMzLjI0ODMgMjIuNzMwMyAzMi45NjAyIDIyLjc4NzMgMzIuNzI1IDIyLjkwMDhDMzIuNDk5NyAyMy4wMDYxIDMyLjMwNDEgMjMuMTY1OSAzMi4xNTYgMjMuMzY1OEMzMi4wMDc4IDIzLjU3MTggMzEuOTAzMSAyMy44MDU4IDMxLjg0ODQgMjQuMDUzNkMzMS43ODU1IDI0LjMzMzEgMzEuNzU0OCAyNC42MTg5IDMxLjc1NjkgMjQuOTA1NFYyNy45NTgzSDI5Ljg5OVYyMS4xODcyTDMxLjY2NDggMjEuMTg0M1pNMzUuMDQwOSAyMC4xMzU5VjE4LjYwMjNIMzYuODk4N1YyMC4xMzU5SDM1LjA0MDlaTTM2Ljg5ODcgMjEuMTg0M1YyNy45NTUzSDM1LjA0MTVWMjEuMTg0M0gzNi44OTg3Wk0zNy44NjY5IDIxLjE4NDNIMzkuOTg2N0w0MS4xNzc2IDIyLjk1M0w0Mi4zNTQ4IDIxLjE4NDNINDQuNDA5M0w0Mi4xODQ5IDI0LjM1NTRMNDQuNjg0MyAyNy45NTg5SDQyLjU2MzlMNDEuMTUxNSAyNS44MjNMMzkuNzM3OCAyNy45NTg5SDM3LjY1NzhMNDAuMDkxMyAyNC4zOTQ2TDM3Ljg2NjkgMjEuMTg0M1pNNDYuOTU0NCAzMy41NjIzVjE1LjQzNDhINDUuNjUxM1YxNUg0Ny40NTM5VjMzLjk5NDdINDUuNjUxM1YzMy41NTk5TDQ2Ljk1NDQgMzMuNTYyM1oiIGZpbGw9IiMwNDA0MDQiLz4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzE1NF82KSI+CjxwYXRoIGQ9Ik00MyAwSDdDMy4xMzQwMSAwIDAgMy4xMzQwMSAwIDdWNDNDMCA0Ni44NjYgMy4xMzQwMSA1MCA3IDUwSDQzQzQ2Ljg2NiA1MCA1MCA0Ni44NjYgNTAgNDNWN0M1MCAzLjEzNDAxIDQ2Ljg2NiAwIDQzIDBaIiBmaWxsPSJ3aGl0ZSIvPgo8cGF0aCBkPSJNMy40OTk1MiAxNS40Mzc3VjMzLjU2NTJINC44MDI2NVYzNEgzVjE1LjAwNTNINC44MDIwNlYxNS40NDAxTDMuNDk5NTIgMTUuNDM3N1pNOC41MTg0MyAyMS4xODQzVjIyLjEwMTNIOC41NDQ1NkM4Ljc3Mjk1IDIxLjc2NjUgOS4wNzUxIDIxLjQ4ODUgOS40Mjc3NyAyMS4yODg4QzkuNzcyMjcgMjEuMDk2OSAxMC4xNjcyIDIxLjAwMDcgMTAuNjExNSAyMS4wMDA3QzExLjAzOTIgMjEuMDAwNyAxMS40Mjk0IDIxLjA4MzkgMTEuNzgyOCAyMS4yNTAyQzEyLjEzNjIgMjEuNDE1OSAxMi40MDQ3IDIxLjcwODEgMTIuNTg3NiAyMi4xMjc1QzEyLjc4ODQgMjEuODMwNSAxMy4wNjA0IDIxLjU2ODUgMTMuNDA1NSAyMS4zNDE2QzEzLjc1IDIxLjExNDIgMTQuMTU3NCAyMS4wMDA3IDE0LjYyOSAyMS4wMDA3QzE0Ljk4NjYgMjEuMDAwNyAxNS4zMTggMjEuMDQ0NyAxNS42MjMzIDIxLjEzMTRDMTUuOTI4NiAyMS4yMTkzIDE2LjE4OTkgMjEuMzU4OSAxNi40MDg1IDIxLjU1MTNDMTYuNjI1OSAyMS43NDMyIDE2Ljc5NjQgMjEuOTk0NCAxNi45MTg3IDIyLjMwNDRDMTcuMDQwNSAyMi42MTQ1IDE3LjEwMTcgMjIuOTg3NSAxNy4xMDE3IDIzLjQyNTJWMjcuOTU4OUgxNS4yNDQ0VjI0LjExOTZDMTUuMjQ0NCAyMy44OTIxIDE1LjIzNTUgMjMuNjc4MyAxNS4yMTgyIDIzLjQ3NjlDMTUuMjA1OCAyMy4yOTQ0IDE1LjE1NjkgMjMuMTE2MyAxNS4wNzQ1IDIyLjk1M0MxNC45OTU0IDIyLjgwNDEgMTQuODc1IDIyLjY4MTEgMTQuNzI3NiAyMi41OTlDMTQuNTc1IDIyLjUxMjMgMTQuMzY3NyAyMi40Njg0IDE0LjEwNTggMjIuNDY4NEMxMy44NDQ0IDIyLjQ2ODQgMTMuNjMzIDIyLjUxODkgMTMuNDcxNCAyMi42MTg3QzEzLjMwOTkgMjIuNzE5NiAxMy4xODMzIDIyLjg1MDMgMTMuMDkxOSAyMy4wMTE4QzEyLjk5NzQgMjMuMTgyNSAxMi45MzUzIDIzLjM2OTIgMTIuOTA4OSAyMy41NjI0QzEyLjg3ODEgMjMuNzY4NSAxMi44NjI2IDIzLjk3NjYgMTIuODYyNiAyNC4xODQ5VjI3Ljk1ODlIMTEuMDA0N1YyNC4xNTg4QzExLjAwNDcgMjMuOTU4IDExLjAwMDYgMjMuNzU5IDEwLjk5MjIgMjMuNTYyNEMxMC45ODU1IDIzLjM3NjEgMTAuOTQ3OCAyMy4xOTIzIDEwLjg4MDYgMjMuMDE4NEMxMC44MTY1IDIyLjg1NDEgMTAuNzAyMSAyMi43MTQyIDEwLjU1MzkgMjIuNjE4N0MxMC40MDA3IDIyLjUxODkgMTAuMTc2MiAyMi40Njg0IDkuODc5NzcgMjIuNDY4NEM5Ljc2MjA5IDIyLjQ3MzMgOS42NDU1MyAyMi40OTMzIDkuNTMyOSAyMi41Mjc4QzkuMzc5NDQgMjIuNTcyIDkuMjM2ODQgMjIuNjQ3NiA5LjExNDE2IDIyLjc0OTlDOC45Nzg3NCAyMi44NTkyIDguODYzNTIgMjMuMDE2NiA4Ljc2NzMgMjMuMjIxNUM4LjY3MTY3IDIzLjQyNyA4LjYyMzU2IDIzLjY5NTUgOC42MjM1NiAyNC4wMjc1VjI3Ljk1ODlINi43NjUwOFYyMS4xODE5TDguNTE4NDMgMjEuMTg0M1pNMTguMjk0OSAyMi4xODAzQzE4LjQ4MjYgMjEuODk1NyAxOC43MzMyIDIxLjY1NzkgMTkuMDI3MyAyMS40ODU0QzE5LjMzNzUgMjEuMzA1NSAxOS42NzU4IDIxLjE3OTIgMjAuMDI4MSAyMS4xMTE4QzIwLjM5NjUgMjEuMDM3OSAyMC43NzEzIDIxLjAwMDcgMjEuMTQ3MSAyMS4wMDA3QzIxLjQ4NzQgMjEuMDAwNyAyMS44MzE5IDIxLjAyNDUgMjIuMTgwNiAyMS4wNzI2QzIyLjUyOTggMjEuMTIwNyAyMi44NDgyIDIxLjIxNTEgMjMuMTM2MiAyMS4zNTQ3QzIzLjQyMzcgMjEuNDk0MyAyMy42NTg5IDIxLjY4ODUgMjMuODQzIDIxLjkzNzRDMjQuMDI2IDIyLjE4NjggMjQuMTE3NCAyMi41MTY1IDI0LjExNzQgMjIuOTI2OVYyNi40NTE0QzI0LjExNzQgMjYuNzU3OSAyNC4xMzUzIDI3LjA1MDEgMjQuMTY5NyAyNy4zMjkzQzI0LjIwNDIgMjcuNjA5MSAyNC4yNjUzIDI3LjgxODcgMjQuMzUyNyAyNy45NTg5SDIyLjQ2OTJDMjIuMzk4IDI3Ljc0NjggMjIuMzU0MSAyNy41MjY0IDIyLjMzODYgMjcuMzAzMkMyMi4wNDE2IDI3LjYwOTEgMjEuNjkyOSAyNy44MjM1IDIxLjI5MiAyNy45NDUyQzIwLjg5MzQgMjguMDY3MiAyMC40Nzg4IDI4LjEyOTMgMjAuMDYxOSAyOC4xMjk0QzE5LjczODggMjguMTI5NCAxOS40MzgzIDI4LjA4OTYgMTkuMTU5MSAyOC4wMTA2QzE4Ljg5MjggMjcuOTM4NyAxOC42NDM1IDI3LjgxNDEgMTguNDI2MiAyNy42NDQxQzE4LjIxNTIgMjcuNDc2MiAxOC4wNDcxIDI3LjI2MDYgMTcuOTM1NiAyNy4wMTUxQzE3LjgxNzQgMjYuNzYyMSAxNy43NTg2IDI2LjQ2MDMgMTcuNzU4NiAyNi4xMTExQzE3Ljc1ODYgMjUuNzI2OCAxNy44MjYzIDI1LjQxMDIgMTcuOTYxNyAyNS4xNjA4QzE4LjA5NjUgMjQuOTExOSAxOC4yNzA2IDI0LjcxMzUgMTguNDg1IDI0LjU2NDRDMTguNjk4OCAyNC40MTYgMTguOTQyOSAyNC4zMDQ5IDE5LjIxNzkgMjQuMjMwNkMxOS40OTIzIDI0LjE1NjQgMTkuNzY5NyAyNC4wOTc2IDIwLjA0ODkgMjQuMDUzNkMyMC4zMjggMjQuMDEwMyAyMC42MDI0IDIzLjk3NTIgMjAuODcyNyAyMy45NDkxQzIxLjE0MzUgMjMuOTIzIDIxLjM4MzUgMjMuODgzOCAyMS41OTI1IDIzLjgzMDlDMjEuODAyMiAyMy43Nzg2IDIxLjk2NzMgMjMuNzAyIDIyLjA4OTcgMjMuNjAxNkMyMi4yMTIgMjMuNTAxMyAyMi4yNjg1IDIzLjM1NTIgMjIuMjYwMiAyMy4xNjIxQzIyLjI2MDIgMjIuOTYyIDIyLjIyNzUgMjIuODAyMiAyMi4xNjE2IDIyLjY4NDZDMjIuMTAwNiAyMi41NzExIDIyLjAxMDMgMjIuNDc1OSAyMS45MDAyIDIyLjQwOUMyMS43ODM1IDIyLjM0MSAyMS42NTQ1IDIyLjI5NjYgMjEuNTIwNyAyMi4yNzgzQzIxLjM2NjkgMjIuMjU2IDIxLjIxMTYgMjIuMjQ1IDIxLjA1NjIgMjIuMjQ1NkMyMC42ODk3IDIyLjI0NTYgMjAuNDAyMyAyMi4zMjQgMjAuMTkyNiAyMi40ODE0QzE5Ljk4MzUgMjIuNjM4MyAxOS44NjEyIDIyLjkwMDggMTkuODI2MSAyMy4yNjcySDE3Ljk2ODJDMTcuOTk0NCAyMi44MzA3IDE4LjEwMzEgMjIuNDY4NCAxOC4yOTQ5IDIyLjE4MDNaTTIxLjk2NSAyNC44MDc0QzIxLjg0MDcgMjQuODQ4MiAyMS43MTM5IDI0Ljg4MDkgMjEuNTg1NCAyNC45MDU0QzIxLjQ0NDUgMjQuOTMyNSAyMS4zMDI3IDI0Ljk1NDIgMjEuMTYwMiAyNC45NzA3QzIxLjAxMTcgMjQuOTg4NSAyMC44NjMyIDI1LjAxMDUgMjAuNzE1MyAyNS4wMzZDMjAuNTc1OCAyNS4wNjIzIDIwLjQzODEgMjUuMDk3NCAyMC4zMDMxIDI1LjE0MTJDMjAuMTc2NyAyNS4xODA3IDIwLjA1NzUgMjUuMjQwNCAxOS45NTAzIDI1LjMxODJDMTkuODQ5MyAyNS4zOTI0IDE5Ljc2OTEgMjUuNDg2OSAxOS43MDc5IDI1LjU5OTdDMTkuNjQ2OCAyNS43MTM3IDE5LjYxNjUgMjUuODU3NSAxOS42MTY1IDI2LjAzMjFDMTkuNjE2NSAyNi4xOTg0IDE5LjY0NjggMjYuMzM4IDE5LjcwNzkgMjYuNDUxNEMxOS43NjkxIDI2LjU2NTUgMTkuODUxNyAyNi42NTQ2IDE5Ljk1NjggMjYuNzIwNUMyMC4wNjEzIDI2Ljc4NTggMjAuMTgzMSAyNi44MzE2IDIwLjMyMzMgMjYuODU3N0MyMC40NjIzIDI2Ljg4MzggMjAuNjA2NiAyNi44OTY5IDIwLjc1NDUgMjYuODk2OUMyMS4xMjA5IDI2Ljg5NjkgMjEuNDA0MyAyNi44MzYzIDIxLjYwNSAyNi43MTM0QzIxLjgwNTggMjYuNTkxNiAyMS45NTM3IDI2LjQ0NDkgMjIuMDUwNSAyNi4yNzQ0QzIyLjE0NTUgMjYuMTA0NiAyMi4yMDQ5IDI1LjkzMjMgMjIuMjI2OSAyNS43NTc3QzIyLjI0ODMgMjUuNTgyNSAyMi4yNTk2IDI1LjQ0MjkgMjIuMjU5NiAyNS4zMzc4VjI0LjY0MjhDMjIuMTczNiAyNC43MTcyIDIyLjA3MzQgMjQuNzczMiAyMS45NjUgMjQuODA3NFpNMjkuMDA5MyAyMS4xODQzVjIyLjQyOTJIMjcuNjQ4NVYyNS43ODMyQzI3LjY0ODUgMjYuMDk4IDI3LjcwMDggMjYuMzA3NyAyNy44MDUzIDI2LjQxMjJDMjcuOTA5OCAyNi41MTc0IDI4LjExOTUgMjYuNTY5NiAyOC40MzMxIDI2LjU2OTZDMjguNTM4MiAyNi41Njk2IDI4LjYzOCAyNi41NjU1IDI4LjczNDMgMjYuNTU2NkMyOC44Mjk5IDI2LjU0NzcgMjguOTIxOSAyNi41MzQ2IDI5LjAwOTMgMjYuNTE3NFYyNy45NTgzQzI4LjgzNTggMjcuOTg2MiAyOC42NjA5IDI4LjAwMzkgMjguNDg1NCAyOC4wMTEyQzI4LjI5OCAyOC4wMTk2IDI4LjExMDUgMjguMDI0IDI3LjkyMjkgMjguMDI0MkMyNy42MzU0IDI4LjAyNDIgMjcuMzYyMiAyOC4wMDQgMjcuMTA1IDI3Ljk2NDhDMjYuODY2IDI3LjkzMTggMjYuNjM1MiAyNy44NTQgMjYuNDI1IDI3LjczNTZDMjYuMjI3NiAyNy42MjEgMjYuMDY2NiAyNy40NTMgMjUuOTYwNSAyNy4yNTA5QzI1Ljg0NyAyNy4wNDEyIDI1Ljc5IDI2Ljc2NjIgMjUuNzkgMjYuNDI1M1YyMi40MjkySDI0LjY2NTFWMjEuMTg0M0gyNS43OVYxOS4xNTI5SDI3LjY0ODVWMjEuMTg0M0gyOS4wMDkzWk0zMS42NjQ4IDIxLjE4NDNWMjIuNDQyMkgzMS42OTFDMzEuODY4OSAyMi4wMTY5IDMyLjE2OTYgMjEuNjU0MiAzMi41NTQ2IDIxLjQwMDVDMzIuNzQ1MiAyMS4yNzQ0IDMyLjk1MjMgMjEuMTc1MSAzMy4xNjk5IDIxLjEwNTNDMzMuMzg5OCAyMS4wMzUyIDMzLjYxOTIgMjEgMzMuODUgMjEuMDAwN0MzMy45NzIzIDIxLjAwMDcgMzQuMTA3MiAyMS4wMjI3IDM0LjI1NTcgMjEuMDY2MVYyMi43OTU2QzM0LjE1MTkgMjIuNzc1NyAzNC4wNDcyIDIyLjc2MDQgMzMuOTQyIDIyLjc0OTlDMzMuODI0NyAyMi43MzcxIDMzLjcwNjcgMjIuNzMwNSAzMy41ODg2IDIyLjczMDNDMzMuMjQ4MyAyMi43MzAzIDMyLjk2MDIgMjIuNzg3MyAzMi43MjUgMjIuOTAwOEMzMi40OTk3IDIzLjAwNjEgMzIuMzA0MSAyMy4xNjU5IDMyLjE1NiAyMy4zNjU4QzMyLjAwNzggMjMuNTcxOCAzMS45MDMxIDIzLjgwNTggMzEuODQ4NCAyNC4wNTM2QzMxLjc4NTUgMjQuMzMzMSAzMS43NTQ4IDI0LjYxODkgMzEuNzU2OSAyNC45MDU0VjI3Ljk1ODNIMjkuODk5VjIxLjE4NzJMMzEuNjY0OCAyMS4xODQzWk0zNS4wNDA5IDIwLjEzNTlWMTguNjAyM0gzNi44OTg3VjIwLjEzNTlIMzUuMDQwOVpNMzYuODk4NyAyMS4xODQzVjI3Ljk1NTNIMzUuMDQxNVYyMS4xODQzSDM2Ljg5ODdaTTM3Ljg2NjkgMjEuMTg0M0gzOS45ODY3TDQxLjE3NzYgMjIuOTUzTDQyLjM1NDggMjEuMTg0M0g0NC40MDkzTDQyLjE4NDkgMjQuMzU1NEw0NC42ODQzIDI3Ljk1ODlINDIuNTYzOUw0MS4xNTE1IDI1LjgyM0wzOS43Mzc4IDI3Ljk1ODlIMzcuNjU3OEw0MC4wOTEzIDI0LjM5NDZMMzcuODY2OSAyMS4xODQzWk00Ni45NTQ0IDMzLjU2MjNWMTUuNDM0OEg0NS42NTEzVjE1SDQ3LjQ1MzlWMzMuOTk0N0g0NS42NTEzVjMzLjU1OTlMNDYuOTU0NCAzMy41NjIzWiIgZmlsbD0iIzA0MDQwNCIvPgo8L2c+CjxkZWZzPgo8Y2xpcFBhdGggaWQ9ImNsaXAwXzE1NF82Ij4KPHJlY3Qgd2lkdGg9IjUwIiBoZWlnaHQ9IjUwIiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo=", + "description": "Matrix is an opensource commucation platform that provides secure messaging. It is designed to be decentralized, allowing users to communicate across different servers and platforms while maintaining control over their data.", + "fields": [ + { + "description": "Domain", + "key": "DOMAIN", + "value": "" + }, + { + "description": "Postgres database name", + "key": "POSTGRES_DB", + "value": "", + "required": "true", + "generated": "" + }, + { + "description": "Postgres username", + "key": "POSTGRES_USER", + "value": "", + "required": "true", + "generated": "time|md5|8" + }, + { + "description": "Postgres password for user", + "key": "POSTGRES_PASSWORD", + "value": "", + "required": "true", + "generated": "random|md5|12" + }, + { + "description": "Postgres root user password", + "key": "POSTGRES_ROOT_PASSWORD", + "value": "", + "required": "true", + "generated": "random|sha256|20" + } + ] +} \ No newline at end of file