Compare commits
41 Commits
6bf99e7a1a
...
main
Author | SHA1 | Date | |
---|---|---|---|
37e7b83077 | |||
|
becd96416a | ||
|
09371f8b4b | ||
d723b4daf5 | |||
|
56e6e4e789 | ||
366fa1d6b8 | |||
|
f5130b0c57 | ||
082ae8fcf8 | |||
|
1ef0fd1f5c | ||
984a61d036 | |||
|
ca41276ecf | ||
08c4e49d82 | |||
|
7a2a4e90ed | ||
b232e22427 | |||
|
4bb61da615 | ||
2649856b30 | |||
|
e3862bbeb7 | ||
bf944dee1b | |||
|
fc0197dcf1 | ||
bc26466fab | |||
|
c30a5ceadb | ||
24b9f416b5 | |||
|
fcc452af8a | ||
5598cd2e4e | |||
|
daaa19d32a | ||
a860503297 | |||
|
2129a7e8f9 | ||
aecfab545d | |||
|
22e37d90af | ||
cf27b29d98 | |||
|
efd077e41a | ||
234f2b8379 | |||
|
3fbdace533 | ||
858ddb310a | |||
|
f065b4f6ce | ||
c48ee36943 | |||
|
05f0a6d10f | ||
b6bf808328 | |||
|
01ca5a196c | ||
73419aeff8 | |||
|
b5c693bc8b |
File diff suppressed because one or more lines are too long
63
matrix/domain-matrix-admin.json
Normal file
63
matrix/domain-matrix-admin.json
Normal file
@@ -0,0 +1,63 @@
|
|||||||
|
{
|
||||||
|
"main": {
|
||||||
|
"SERVICE_NAME": "matrix",
|
||||||
|
"DOMAIN": "#ADMINDOMAIN"
|
||||||
|
},
|
||||||
|
"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": "#ADMINDOMAIN"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"SMARTHOST_PROXY_PATH": "/smarthost-domains"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"LOCATION": "#SUBPATH"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"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"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
60
matrix/domain-matrix.json
Normal file
60
matrix/domain-matrix.json
Normal file
@@ -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": "matrixserver"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PORT": "8008"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"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"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
75
matrix/firewall-matrix-admin.json
Normal file
75
matrix/firewall-matrix-admin.json
Normal file
@@ -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"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
76
matrix/firewall-matrix-dns.json
Normal file
76
matrix/firewall-matrix-dns.json
Normal file
@@ -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": []
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
75
matrix/firewall-matrix-smtp.json
Normal file
75
matrix/firewall-matrix-smtp.json
Normal file
@@ -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"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
75
matrix/firewall-matrix.json
Normal file
75
matrix/firewall-matrix.json
Normal file
@@ -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"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
29
matrix/matrix-secret.json
Normal file
29
matrix/matrix-secret.json
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
{
|
||||||
|
"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",
|
||||||
|
"SYNAPSE_CONFIG_DIR": "/data",
|
||||||
|
"SYNAPSE_CONFIG_PATH": "/data/homeserver.yaml",
|
||||||
|
"SYNAPSE_DATA_DIR": "/data"
|
||||||
|
},
|
||||||
|
"matrixadmin": {
|
||||||
|
"REACT_APP_SERVER": "https://#DOMAIN",
|
||||||
|
"BASE_PATH": "#ADMINDOMAIN",
|
||||||
|
"ADMINDOMAIN": "#ADMINDOMAIN",
|
||||||
|
"SUBPATH": "#SUBPATH"
|
||||||
|
}
|
||||||
|
}
|
199
matrix/service-matrix.json
Normal file
199
matrix/service-matrix.json
Normal file
@@ -0,0 +1,199 @@
|
|||||||
|
{
|
||||||
|
"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/db",
|
||||||
|
"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": "bash -c",
|
||||||
|
"CMD": "if [ ! -f /data/homeserver.yaml ]; then /start.py generate ; else exit 1; fi",
|
||||||
|
"PRE_START": [],
|
||||||
|
"POST_START": []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"IMAGE": "safebox/matrix-setup:latest",
|
||||||
|
"UPDATE": "true",
|
||||||
|
"NAME": "matrixserver-dbinit",
|
||||||
|
"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-app",
|
||||||
|
"ROLES": "backend-www",
|
||||||
|
"MEMORY": "512M",
|
||||||
|
"NETWORK": "matrix-net",
|
||||||
|
"SELECTOR": "matrixserver",
|
||||||
|
"VOLUMES": [
|
||||||
|
{
|
||||||
|
"SOURCE": "/etc/user/data/matrix/synapse",
|
||||||
|
"DEST": "/data",
|
||||||
|
"TYPE": "rw"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"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": "safebox/matrix-setup:latest",
|
||||||
|
"UPDATE": "true",
|
||||||
|
"NAME": "matrixserver-finalize",
|
||||||
|
"NETWORK": "host",
|
||||||
|
"MEMORY": "64M",
|
||||||
|
"VOLUMES": [
|
||||||
|
{
|
||||||
|
"SOURCE": "/etc/user/data/matrix/synapse",
|
||||||
|
"DEST": "/data",
|
||||||
|
"TYPE": "rw"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"SOURCE": "SHARED",
|
||||||
|
"DEST": "/var/tmp/shared",
|
||||||
|
"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": "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"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
69
matrix/template.json
Normal file
69
matrix/template.json
Normal file
File diff suppressed because one or more lines are too long
@@ -1,48 +1,60 @@
|
|||||||
{
|
{
|
||||||
"main": {
|
"main": {
|
||||||
"SERVICE_NAME": "nextcloud",
|
"SERVICE_NAME": "nextcloud",
|
||||||
"DOMAIN": "#NEXTCLOUD_TRUSTED_DOMAINS"
|
"DOMAIN": "#DOMAIN"
|
||||||
},
|
},
|
||||||
"containers": [
|
"containers": [
|
||||||
{
|
{
|
||||||
"IMAGE": "safebox/domain-check",
|
"IMAGE": "safebox/domain-check",
|
||||||
"UPDATE": "true",
|
"UPDATE": "true",
|
||||||
"MEMORY": "64M",
|
"MEMORY": "64M",
|
||||||
"NAME": "domain_checker",
|
"NAME": "domain_checker",
|
||||||
"ROLES": "domain_checker",
|
"ROLES": "domain_checker",
|
||||||
"NETWORK": "host",
|
"NETWORK": "host",
|
||||||
"SELECTOR": "",
|
"SELECTOR": "",
|
||||||
"SCALE": "0",
|
"SCALE": "0",
|
||||||
"EXTRA": "--rm --privileged",
|
"EXTRA": "--rm --privileged",
|
||||||
"PRE_START": [],
|
"PRE_START": [],
|
||||||
"DEPEND": [],
|
"DEPEND": [],
|
||||||
"POST_START": [],
|
"POST_START": [],
|
||||||
"CMD": "",
|
"CMD": "",
|
||||||
"ENVS": [
|
"ENVS": [
|
||||||
{ "PROXY": "smarthostloadbalancer" },
|
{
|
||||||
{ "TARGET": "nextcloudnginx" },
|
"PROXY": "smarthostloadbalancer"
|
||||||
{ "PORT": "80" },
|
},
|
||||||
{ "DOMAIN": "#NEXTCLOUD_TRUSTED_DOMAINS" },
|
{
|
||||||
{ "SMARTHOST_PROXY_PATH": "/smarthost-domains" },
|
"TARGET": "nextcloudnginx"
|
||||||
{ "OPERATION": "CREATE" }
|
},
|
||||||
],
|
{
|
||||||
"VOLUMES": [
|
"PORT": "80"
|
||||||
{
|
},
|
||||||
"SOURCE": "/etc/user/config/smarthost-domains",
|
{
|
||||||
"DEST": "/smarthost-domains",
|
"DOMAIN": "#DOMAIN"
|
||||||
"TYPE": "rw"
|
},
|
||||||
},
|
{
|
||||||
{
|
"SMARTHOST_PROXY_PATH": "/smarthost-domains"
|
||||||
"SOURCE": "/etc/system/data/dns/hosts.local",
|
},
|
||||||
"DEST": "/etc/dns/hosts.local",
|
{
|
||||||
"TYPE": "ro"
|
"OPERATION": "CREATE"
|
||||||
},
|
}
|
||||||
{
|
],
|
||||||
"SOURCE": "/var/run/docker.sock",
|
"VOLUMES": [
|
||||||
"DEST": "/var/run/docker.sock",
|
{
|
||||||
"TYPE": "rw"
|
"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"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
@@ -8,8 +8,8 @@
|
|||||||
"nextcloudphp": {
|
"nextcloudphp": {
|
||||||
"NEXTCLOUD_ADMIN_USER": "#NEXTCLOUD_ADMIN_USER",
|
"NEXTCLOUD_ADMIN_USER": "#NEXTCLOUD_ADMIN_USER",
|
||||||
"NEXTCLOUD_ADMIN_PASSWORD": "#NEXTCLOUD_ADMIN_PASSWORD",
|
"NEXTCLOUD_ADMIN_PASSWORD": "#NEXTCLOUD_ADMIN_PASSWORD",
|
||||||
"NEXTCLOUD_TRUSTED_DOMAINS": "#NEXTCLOUD_TRUSTED_DOMAINS",
|
"DOMAIN": "#DOMAIN",
|
||||||
"OVERWRITEHOST": "#NEXTCLOUD_TRUSTED_DOMAINS",
|
"OVERWRITEHOST": "#DOMAIN",
|
||||||
"NEXTCLOUD_DATA_DIR": "/var/data",
|
"NEXTCLOUD_DATA_DIR": "/var/data",
|
||||||
"POSTGRES_DB": "#POSTGRES_DB",
|
"POSTGRES_DB": "#POSTGRES_DB",
|
||||||
"POSTGRES_USER": "#POSTGRES_USER",
|
"POSTGRES_USER": "#POSTGRES_USER",
|
||||||
|
@@ -10,7 +10,7 @@
|
|||||||
"details": "",
|
"details": "",
|
||||||
"info": "Nextcloud domain info",
|
"info": "Nextcloud domain info",
|
||||||
"description": "Domain",
|
"description": "Domain",
|
||||||
"key": "NEXTCLOUD_TRUSTED_DOMAINS",
|
"key": "DOMAIN",
|
||||||
"value": "",
|
"value": "",
|
||||||
"required": "true"
|
"required": "true"
|
||||||
},
|
},
|
||||||
|
@@ -36,7 +36,7 @@
|
|||||||
"VOLUMES": [
|
"VOLUMES": [
|
||||||
{
|
{
|
||||||
"SOURCE": "/etc/user/data/pocketid/db",
|
"SOURCE": "/etc/user/data/pocketid/db",
|
||||||
"DEST": "/var/lib/postgresql",
|
"DEST": "/var/lib/postgresql/data",
|
||||||
"TYPE": "rw"
|
"TYPE": "rw"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
"title": "pocketid",
|
"title": "pocketid",
|
||||||
"subtitle": "Identity management",
|
"subtitle": "Identity management",
|
||||||
"icon": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTAiIGhlaWdodD0iNTAiIHZpZXdCb3g9IjAgMCA1MCA1MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTQzIDBIN0MzLjEzNDAxIDAgMCAzLjEzNDAxIDAgN1Y0M0MwIDQ2Ljg2NiAzLjEzNDAxIDUwIDcgNTBINDNDNDYuODY2IDUwIDUwIDQ2Ljg2NiA1MCA0M1Y3QzUwIDMuMTM0MDEgNDYuODY2IDAgNDMgMFoiIGZpbGw9IndoaXRlIi8+CjxwYXRoIGQ9Ik0yNC40ODc4IDdDMzEuOTM4NCA3IDM4IDEzLjEzNjMgMzggMjAuNjc4N0MzOCAyMy42NDI2IDM3LjA3OSAyNi40NjMyIDM1LjMzNjIgMjguODM0MkMzMy42Mjc4IDMxLjE1OTUgMzEuMjkwMSAzMi44NDg2IDI4LjU3NTEgMzMuNzE5OEwyNy44MjQ3IDMzLjk2MUwyNi4wMzY0IDI1LjAzMTVMMjYuNTMxMSAyNC43ODkyQzI4LjE0NTkgMjMuOTk5IDI5LjE4OTYgMjIuMzE1NiAyOS4xODk2IDIwLjUwMTJDMjkuMTg5NiAxNy44NzY0IDI3LjA4MDUgMTUuNzQwOSAyNC40ODgxIDE1Ljc0MDlDMjEuODk1OCAxNS43NDA5IDE5Ljc4NiAxNy44NzY0IDE5Ljc4NiAyMC41MDEyQzE5Ljc4NiAyMi4zMTU2IDIwLjgzIDIzLjk5OSAyMi40NDQ4IDI0Ljc4OTJMMjIuOTMwMiAyNS4wMjcyTDIwLjA0OTUgNDNIMTJWN0gyNC40ODgxSDI0LjQ4NzhaIiBmaWxsPSJibGFjayIvPgo8L3N2Zz4K",
|
"icon": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTAiIGhlaWdodD0iNTAiIHZpZXdCb3g9IjAgMCA1MCA1MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTQzIDBIN0MzLjEzNDAxIDAgMCAzLjEzNDAxIDAgN1Y0M0MwIDQ2Ljg2NiAzLjEzNDAxIDUwIDcgNTBINDNDNDYuODY2IDUwIDUwIDQ2Ljg2NiA1MCA0M1Y3QzUwIDMuMTM0MDEgNDYuODY2IDAgNDMgMFoiIGZpbGw9IndoaXRlIi8+CjxwYXRoIGQ9Ik0yNC40ODc4IDdDMzEuOTM4NCA3IDM4IDEzLjEzNjMgMzggMjAuNjc4N0MzOCAyMy42NDI2IDM3LjA3OSAyNi40NjMyIDM1LjMzNjIgMjguODM0MkMzMy42Mjc4IDMxLjE1OTUgMzEuMjkwMSAzMi44NDg2IDI4LjU3NTEgMzMuNzE5OEwyNy44MjQ3IDMzLjk2MUwyNi4wMzY0IDI1LjAzMTVMMjYuNTMxMSAyNC43ODkyQzI4LjE0NTkgMjMuOTk5IDI5LjE4OTYgMjIuMzE1NiAyOS4xODk2IDIwLjUwMTJDMjkuMTg5NiAxNy44NzY0IDI3LjA4MDUgMTUuNzQwOSAyNC40ODgxIDE1Ljc0MDlDMjEuODk1OCAxNS43NDA5IDE5Ljc4NiAxNy44NzY0IDE5Ljc4NiAyMC41MDEyQzE5Ljc4NiAyMi4zMTU2IDIwLjgzIDIzLjk5OSAyMi40NDQ4IDI0Ljc4OTJMMjIuOTMwMiAyNS4wMjcyTDIwLjA0OTUgNDNIMTJWN0gyNC40ODgxSDI0LjQ4NzhaIiBmaWxsPSJibGFjayIvPgo8L3N2Zz4K",
|
||||||
"description": "PocketID is an open-source password manager and secure vault solution that allows users to store, manage, and share sensitive information such as passwords, credit card details, and personal notes. It is designed to provide a high level of security and privacy, with features like end-to-end encryption, two-factor authentication, and self-hosting options.",
|
"description": "PocketID is an open-source identity and access management solution that provides secure and efficient user authentication and authorization for web applications and services.",
|
||||||
"fields": [
|
"fields": [
|
||||||
{
|
{
|
||||||
"description": "Domain",
|
"description": "Domain",
|
||||||
|
Reference in New Issue
Block a user