added vaultwarden

This commit is contained in:
gyurix
2024-10-18 13:09:29 +02:00
parent fa1d4c1ebc
commit 504247597d
10 changed files with 567 additions and 72 deletions

View File

@@ -0,0 +1,60 @@
{
"main": {
"SERVICE_NAME": "vaultwarden",
"DOMAIN": "#VAULTWARDEN_DOMAIN"
},
"containers": [
{
"IMAGE": "registry.format.hu/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": "vaultwarden"
},
{
"PORT": "80"
},
{
"DOMAIN": "#VAULTWARDEN_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"
}
]
}
]
}

View File

@@ -0,0 +1,75 @@
{
"main": {
"SERVICE_NAME": "firewalls",
"DOMAIN": "null"
},
"containers": [
{
"IMAGE": "registry.format.hu/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": "vaultwarden"
},
{
"TYPE": "tcp"
},
{
"TARGET_PORT": "80"
},
{
"COMMENT": "proxy for vaultwarden"
}
],
"EXTRA": "--privileged --rm",
"DEPEND": "null",
"START_ON_BOOT": "false",
"CMD": "null",
"PRE_START": "null",
"POST_START": "null"
}
]
}

View File

@@ -0,0 +1,132 @@
{
"main": {
"SERVICE_NAME": "homeassistant",
"DOMAIN": "DOMAIN"
},
"containers": [
{
"IMAGE": "alpine:latest",
"UPDATE": "true",
"NAME": "homeassistant-init",
"NETWORK": "host",
"MEMORY": "64M",
"VOLUMES": [
{
"SOURCE": "USER_DATA",
"DEST": "/etc/user/data",
"TYPE": "rw"
}
],
"EXTRA": "--rm",
"DEPEND": "null",
"START_ON_BOOT": "false",
"ENTRYPOINT": "sh -c",
"CMD": "mkdir -p /etc/user/data/vaultwarden/data && mkdir -p /etc/user/data/vaultwarden/db && mkdir -p /etc/system/log/vaultwarden/db",
"PRE_START": "null",
"POST_START": "null"
},
{
"IMAGE": "mariadb:latest",
"UPDATE": "true",
"NAME": "vaultwardenmysql-db",
"MEMORY": "256M",
"NETWORK": "vaultwarden-net",
"SELECTOR": "nextcloudmysql-db",
"VOLUMES": [
{
"SOURCE": "/etc/user/data/vaultwarden/db",
"DEST": "/var/lib/mysql",
"TYPE": "rw"
},
{
"SOURCE": "/etc/system/log/vaultwarden/db",
"DEST": "/var/lib/mysql/mysql-bin",
"TYPE": "rw"
}
],
"PORTS": [
{
"SOURCE": "null",
"DEST": "3306",
"TYPE": "tcp"
}
],
"ENV_FILES": [
"/etc/user/secret/nextcloud/nextcloud.json"
],
"EXTRA": "--restart unless-stopped",
"DEPEND": "null",
"START_ON_BOOT": "false",
"CMD": "null",
"PRE_START": "null",
"POST_START": "null"
},
{
"IMAGE": "vaultwarden/server",
"UPDATE": "true",
"NAME": "vaultwardenapp",
"NETWORK": "vaultwarden-net",
"SELECTOR": "vaultwardenapp",
"VOLUMES": [
{
"SOURCE": "/etc/user/data/vaultwarden/data",
"DEST": "/data",
"TYPE": "rw"
}
],
"PORTS": [
{
"SOURCE": "null",
"DEST": "80",
"TYPE": "tcp"
}
],
"ENVS": [
{
"ENABLE_DB_WAL": "false"
},
{
"SIGNUPS_ALLOWED": "false"
},
{
"RUST_BACKTRACE": "1"
},
{
"SIGNUPS_DOMAINS_WHITELIST": "#VAULTWARDEN_WHITELIST"
},
{
"SIGNUPS_VERIFY": "true"
},
{
"VAULTWARDEN_SMTP": "#VAULTWARDEN_SMTP"
},
{
"VAULTWARDEN_SMTP_HOST": "#VAULTWARDEN_SMTP_HOST"
},
{
"VAULTWARDEN_SMTP_PORT": "#VAULTWARDEN_SMTP_PORT"
},
{
"VAULTWARDEN_SMTP_SECURITY": "#VAULTWARDEN_SMTP_SECURITY"
},
{
"VAULTWARDEN_SMTP_FROM": "#VAULTWARDEN_SMTP_FROM"
},
{
"VAULTWARDEN_SMTP_USERNAME": "#VAULTWARDEN_SMTP_USERNAME"
}
],
"EXTRA": "--restart unless-stopped",
"DEPEND": [],
"START_ON_BOOT": "false",
"CMD": "null",
"PRE_START": "null",
"POST_START": [
"firewall-vaultwarden",
"domain-vaultwarden",
"dns-vaultwarden",
"smtp-vaultwarden"
]
}
]
}

85
vaultwarden/template.json Normal file
View File

@@ -0,0 +1,85 @@
{
"name": "bitwarden",
"fields": [
{
"description": "MYSQL database name",
"key": "DB_MYSQL",
"value": "",
"required": "true",
"generated": ""
},
{
"description": "MYSQL username",
"key": "DB_USER",
"value": "",
"required": "true",
"generated": "time|md5|8"
},
{
"description": "MYSQL password for user",
"key": "DB_PASSWORD",
"value": "",
"required": "true",
"generated": "random|md5|12"
},
{
"description": "MYSQL root user password",
"key": "DB_ROOT_PASSWORD",
"value": "",
"required": "true",
"generated": "random|sha256|20"
}
{
"description": "Please add VaultWarden domain:",
"key": "VAULTWARDEN_DOMAIN",
"value": "",
"required": "true"
},
{
"description": "Please choose an SMTP server:",
"key": "VAULTWARDEN_SMTP",
"value": "1:gmail,2:microsoft outlook/hotmail,3:other",
"required": "true",
"type": "select"
},
{
"description": "Please add SMTP HOST:",
"key": "VAULTWARDEN_SMTP_HOST",
"value": "",
"required": "true"
},
{
"description": "Please add SMTP PORT (587, 465, 25, etc.):",
"key": "VAULTWARDEN_SMTP_PORT",
"value": "25",
"required": "true"
},
{
"description": "Please add SMTP SECURITY (starttls, force_tls, off, etc. you can leave it empty also):",
"key": "VAULTWARDEN_SMTP_SECURITY",
"value": ""
},
{
"description": "Please add SMTP FROM (mail address from):",
"key": "VAULTWARDEN_SMTP_FROM",
"value": "",
"required": "true"
},
{
"description": "Please add SMTP USERNAME:",
"key": "VAULTWARDEN_SMTP_USERNAME",
"value": ""
},
{
"description": "Please add SMTP PASSWORD (you can leave it empty also):",
"key": "VAULTWARDEN_SMTP_PASSWORD",
"value": ""
},
{
"description": "Please add Domains Whitelist (list of domains separated with spaces):",
"key": "VAULTWARDEN_WHITELIST",
"value": "",
"required": "true"
}
]
}

View File

@@ -0,0 +1,13 @@
{
"vaultwardenmysql": {
"MARIADB_DATABASE": "#DB_MYSQL",
"MARIADB_USER": "#DB_USER",
"MARIADB_PASSWORD": "#DB_PASSWORD",
"MARIADB_ROOT_PASSWORD": "#DB_ROOT_PASSWORD"
},
"vaultwardenapp": {
"DATABASE_URL": "'mysql://#DB_USER:#DB_PASSWORD@vaultwardenmysql-db:3306/#DB_MYSQL'",
"ADMIN_TOKEN": "#VAULTWARDEN_ADMIN_TOKEN",
"VAULTWARDEN_SMTP_PASSWORD": "#VAULTWARDEN_SMTP_PASSWORD"
}
}