infrastructure/services.auto.tfvars

678 lines
12 KiB
Text
Raw Normal View History

2024-09-27 23:59:53 +00:00
services = {
"acme_dns" = {
2024-10-14 01:30:59 +00:00
host = "node001"
2024-10-06 17:08:13 +00:00
dns = [{
domain = "acme.serguzim.me"
2024-10-06 17:08:13 +00:00
}]
2024-10-07 19:17:35 +00:00
monitoring = {
url = "/health"
group = "7-support"
}
2024-11-01 01:34:58 +00:00
ports = [
{
description = "DNS"
2024-11-01 01:34:58 +00:00
port = 53
protocol = "tcp"
type = "firewall"
},
{
description = "DNS"
2024-11-01 01:34:58 +00:00
port = 53
protocol = "udp"
type = "firewall"
}
]
2024-09-28 12:14:09 +00:00
auth = false
2024-09-27 23:59:53 +00:00
database = true
s3 = false
2024-09-27 23:59:53 +00:00
},
2024-10-06 17:08:13 +00:00
"authentik" = {
2024-10-28 23:34:57 +00:00
host = "node001"
2024-10-06 17:08:13 +00:00
dns = [{
domain = "auth.serguzim.me"
2024-10-06 17:08:13 +00:00
}]
2024-10-07 19:17:35 +00:00
monitoring = {
url = "/-/health/live/"
group = "4-services"
}
certificates = ["auth.serguzim.me"]
auth = false
database = true
s3 = false
2024-10-29 21:43:05 +00:00
mail = "auth"
},
2024-10-06 17:08:13 +00:00
"backup" = {
host = "*"
auth = false
database = false
s3 = false
},
"caddy" = {
host = "*"
ports = [
2024-10-20 23:52:16 +00:00
{
description = "HTTP"
2024-10-20 23:52:16 +00:00
port = 80
protocol = "tcp"
type = "reverse_proxy"
},
{
description = "HTTPS"
2024-10-20 23:52:16 +00:00
port = 443
protocol = "tcp"
type = "reverse_proxy"
},
{
description = "HTTP/3 QUIC"
2024-10-20 23:52:16 +00:00
port = 443
2024-11-01 01:34:58 +00:00
protocol = "udp"
2024-10-20 23:52:16 +00:00
type = "reverse_proxy"
},
#"2019:2019",
]
auth = false
database = false
s3 = false
},
2024-10-29 05:07:04 +00:00
"dokku" = {
2024-10-14 01:30:59 +00:00
host = "node001"
2024-10-06 17:08:13 +00:00
dns = [
{
2024-10-29 05:07:04 +00:00
domain = "paas.serguzim.me"
},
{
domain = "*.paas.serguzim.me"
name = "dokku-wildcard"
alias = "dokku"
2024-10-06 17:08:13 +00:00
},
{
domain = "serguzim.me"
name = "webpage-serguzim"
2024-10-29 05:07:04 +00:00
alias = "dokku"
2024-10-08 23:32:35 +00:00
},
{
domain = "www.serguzim.me"
2024-10-08 23:32:35 +00:00
name = "webpage-serguzim-www"
alias = "webpage-serguzim"
2024-10-29 05:07:04 +00:00
},
2024-10-06 17:08:13 +00:00
]
2024-10-29 05:07:04 +00:00
backup = [{
name = "dokku"
type = "directory"
path = "/var/lib/dokku"
}]
2024-10-07 19:17:35 +00:00
monitoring = {
group = "7-support"
}
2024-11-01 01:34:58 +00:00
ports = [
{
description = "SSH for dokku"
2024-11-01 01:34:58 +00:00
port = 3022
protocol = "tcp"
type = "firewall"
}
]
2024-10-06 17:08:13 +00:00
auth = false
database = false
s3 = false
},
2024-10-29 05:07:04 +00:00
"extra_services" = {
host = "node001"
auth = false
database = false
s3 = false
},
2024-09-27 23:59:53 +00:00
"forgejo" = {
2024-10-28 23:34:57 +00:00
host = "node001"
2024-10-06 17:08:13 +00:00
dns = [{
domain = "git.serguzim.me"
2024-10-06 17:08:13 +00:00
}]
backup = [{
name = "forgejo_data"
type = "docker"
}]
2024-10-07 19:17:35 +00:00
monitoring = {
url = "/api/v1/version"
group = "4-services"
}
2024-11-01 01:34:58 +00:00
ports = [
{
description = "SSH for forgejo"
2024-11-01 01:34:58 +00:00
port = 22
protocol = "tcp"
type = "firewall"
}
]
2024-09-28 12:14:09 +00:00
auth = true
auth_redirects = ["https://git.serguzim.me/user/oauth2/auth.serguzim.me/callback"]
2024-09-27 23:59:53 +00:00
database = true
s3 = true
2024-10-29 21:43:05 +00:00
mail = "git"
},
2024-10-06 17:08:13 +00:00
"forgejo_runner" = {
2024-10-28 23:34:57 +00:00
host = "node001"
2024-10-06 17:08:13 +00:00
auth = false
database = false
s3 = false
},
"healthcheck" = {
2024-10-28 23:34:57 +00:00
host = "node001"
2024-10-06 17:08:13 +00:00
auth = false
database = false
s3 = false
},
2024-10-07 19:17:35 +00:00
"gatus" = {
2024-10-28 23:34:57 +00:00
host = "node001"
2024-10-07 19:17:35 +00:00
dns = [{
domain = "status.serguzim.me"
2024-10-07 19:17:35 +00:00
}]
backup = [{
name = "gatus_data"
type = "docker"
}]
2024-12-06 00:53:42 +00:00
auth = false
2024-10-07 19:17:35 +00:00
database = false
s3 = false
2024-10-29 21:43:05 +00:00
mail = "status"
2024-10-07 19:17:35 +00:00
},
2024-10-06 17:08:13 +00:00
"homebox" = {
2024-10-28 23:34:57 +00:00
host = "node001"
2024-10-06 17:08:13 +00:00
dns = [{
domain = "inventory.serguzim.me"
2024-10-06 17:08:13 +00:00
}]
backup = [{
name = "homebox_data"
type = "docker"
}]
2024-10-07 19:17:35 +00:00
monitoring = {
url = "/api/v1/status"
group = "4-services"
conditions = [
"DEFAULT",
"[BODY].health == true"
]
}
2024-10-06 17:08:13 +00:00
auth = false
database = false
s3 = false
2024-10-29 21:43:05 +00:00
mail = "inventory"
2024-10-06 17:08:13 +00:00
},
"immich" = {
2024-10-30 15:35:46 +00:00
host = "node001"
2024-10-06 17:08:13 +00:00
dns = [{
domain = "gallery.serguzim.me"
2024-10-06 17:08:13 +00:00
}]
backup = [
#{
# name = "immich_upload"
# type = "docker_remote"
#},
2024-10-06 17:08:13 +00:00
{
name = "immich_database"
type = "hook"
}
]
2024-10-07 19:17:35 +00:00
monitoring = {
group = "4-services"
}
auth = true
auth_redirects = ["https://gallery.serguzim.me/auth/login"]
database = false
s3 = false
},
2024-10-06 17:08:13 +00:00
"influxdb" = {
2024-10-29 21:41:47 +00:00
host = "node001"
2024-10-06 17:08:13 +00:00
dns = [{
domain = "tick.serguzim.me"
2024-10-06 17:08:13 +00:00
}]
backup = [{
name = "influxdb_data"
type = "docker"
}]
2024-10-07 19:17:35 +00:00
monitoring = {
url = "/health"
group = "4-services"
conditions = [
"DEFAULT",
"[BODY].status == pass"
]
}
2024-10-06 17:08:13 +00:00
auth = false
database = false
s3 = false
},
"jellyfin" = {
host = "node001"
2024-10-06 17:08:13 +00:00
dns = [{
domain = "media.serguzim.me"
2024-10-06 17:08:13 +00:00
}]
2024-10-27 15:48:02 +00:00
backup = [
{
name = "jellyfin_config"
type = "docker"
},
#{
# name = "jellyfin_media"
# type = "docker_remote"
#}
2024-10-27 15:48:02 +00:00
]
2024-10-07 19:17:35 +00:00
monitoring = {
url = "/health"
group = "4-services"
conditions = [
"DEFAULT",
"[BODY] == Healthy"
]
}
2024-10-06 17:08:13 +00:00
auth = false
database = false
s3 = false
},
"lego" = {
host = "*"
auth = false
database = false
s3 = false
},
"linkwarden" = {
2024-10-28 23:34:57 +00:00
host = "node001"
2024-10-06 17:08:13 +00:00
dns = [{
domain = "bookmarks.serguzim.me"
2024-10-06 17:08:13 +00:00
}]
2024-10-07 19:17:35 +00:00
monitoring = {
url = "/api/v1/logins"
group = "4-services"
}
2024-09-28 12:14:09 +00:00
auth = true
2024-10-09 00:29:08 +00:00
auth_cert = "rsa"
2024-09-28 16:24:07 +00:00
auth_redirects = ["https://bookmarks.serguzim.me/api/v1/auth/callback/authentik"]
database = true
s3 = true
},
2024-10-06 17:08:13 +00:00
mailcowdockerized = {
2024-10-06 17:08:13 +00:00
host = "node003"
dns = [{
domain = "mail.serguzim.me"
2024-10-06 17:08:13 +00:00
}]
backup = [{
name = "mailcowdockerized"
2024-10-06 17:08:13 +00:00
type = "hook"
}]
2024-10-07 19:17:35 +00:00
monitoring = {
group = "4-services"
}
2024-11-01 01:34:58 +00:00
ports = [
{
description = "SMTP"
port = 25
2024-11-01 01:34:58 +00:00
protocol = "tcp"
type = "firewall"
},
{
description = "SMTP TLS"
port = 465
2024-11-01 01:34:58 +00:00
protocol = "tcp"
type = "firewall"
},
{
description = "SMTP StartTLS"
port = 587
2024-11-01 01:34:58 +00:00
protocol = "tcp"
type = "firewall"
},
{
description = "IMAPS"
port = 993
2024-11-01 01:34:58 +00:00
protocol = "tcp"
type = "firewall"
},
{
description = "POPS"
port = 995
2024-11-01 01:34:58 +00:00
protocol = "tcp"
type = "firewall"
},
{
description = "Sieve"
port = 4190
2024-11-01 01:34:58 +00:00
protocol = "tcp"
type = "firewall"
}
]
2024-10-06 17:08:13 +00:00
auth = false
database = false
s3 = false
},
"minio" = {
2024-10-29 05:07:04 +00:00
host = "node001"
2024-10-06 17:08:13 +00:00
dns = [
{
domain = "s3.serguzim.me"
2024-10-06 17:08:13 +00:00
},
{
2024-10-19 13:18:54 +00:00
domain = "console.s3.serguzim.me"
2024-10-06 17:08:13 +00:00
name = "minio-console"
alias = "minio"
}
]
backup = [{
name = "minio_data"
type = "docker"
}]
2024-10-07 19:17:35 +00:00
monitoring = {
url = "/minio/health/live"
group = "7-support"
}
2024-10-08 23:33:24 +00:00
auth = true
auth_redirects = ["https://console.s3.serguzim.me/oauth_callback"]
2024-10-06 17:08:13 +00:00
database = false
s3 = false
},
"ntfy" = {
2024-10-28 23:34:57 +00:00
host = "node001"
2024-10-06 17:08:13 +00:00
dns = [{
domain = "push.serguzim.me"
2024-10-06 17:08:13 +00:00
}]
backup = [{
name = "ntfy_data"
type = "docker"
}]
2024-10-07 19:17:35 +00:00
monitoring = {
url = "/v1/health"
group = "4-services"
conditions = [
"DEFAULT",
"[BODY].healthy == true"
]
}
2024-10-06 17:08:13 +00:00
auth = false
database = false
s3 = false
},
"postgresql" = {
2024-10-31 01:25:02 +00:00
host = "node001"
2024-10-29 13:10:54 +00:00
dns = [{
domain = "db.serguzim.me"
}]
2024-10-06 17:08:13 +00:00
backup = [{
name = "postgresql"
type = "hook"
}]
2024-10-08 15:46:14 +00:00
monitoring = {
url = "tcp://db.serguzim.me:5432"
group = "7-support"
conditions = [
"[CONNECTED] == true"
]
}
certificates = ["db.serguzim.me"]
2024-10-06 17:08:13 +00:00
auth = false
database = false
s3 = false
},
"reitanlage_oranienburg" = {
2024-10-28 23:34:57 +00:00
host = "node001"
2024-10-06 17:08:13 +00:00
dns = [
{
domain = "reitanlage-oranienburg.de"
},
{
domain = "www.reitanlage-oranienburg.de"
2024-10-06 17:08:13 +00:00
name = "reitanlage_oranienburg-www"
alias = "reitanlage_oranienburg"
}
]
backup = [{
2024-10-13 18:32:07 +00:00
name = "reitanlage_oranienburg_data"
2024-10-06 17:08:13 +00:00
type = "docker"
}]
2024-10-07 19:17:35 +00:00
monitoring = {
group = "5-websites"
}
2024-10-06 17:08:13 +00:00
auth = false
database = false
s3 = false
},
"shlink" = {
2024-10-14 01:30:59 +00:00
host = "node001"
2024-10-06 17:08:13 +00:00
dns = [
{
domain = "msrg.cc"
},
{
domain = "msvg.cc"
name = "shlink-msvg"
alias = "shlink"
}
]
2024-10-07 19:17:35 +00:00
monitoring = {
url = "/rest/health"
group = "4-services"
conditions = [
"DEFAULT",
"[BODY].status == pass"
]
}
auth = false
database = true
s3 = false
},
2024-10-06 17:08:13 +00:00
"synapse" = {
2024-10-28 23:34:57 +00:00
host = "node001"
2024-10-06 17:08:13 +00:00
dns = [
{
domain = "matrix.serguzim.me"
2024-10-06 17:08:13 +00:00
},
{
domain = "matrix.msrg.cc"
2024-10-06 17:08:13 +00:00
name = "synapse-msrg"
alias = "synapse"
}
]
backup = [{
name = "synapse_media_store"
type = "docker"
}]
2024-10-07 19:17:35 +00:00
monitoring = {
url = "/_matrix/client/versions"
group = "4-services"
}
2024-10-20 23:52:16 +00:00
ports = [
{
description = "Matrix"
2024-10-20 23:52:16 +00:00
port = 8448
protocol = "tcp"
type = "reverse_proxy"
}
]
auth = true
auth_redirects = ["https://matrix.serguzim.me/_synapse/client/oidc/callback"]
database = true
s3 = false
2024-10-29 21:43:05 +00:00
mail = "matrix"
},
2024-10-06 17:08:13 +00:00
"tandoor" = {
2024-10-28 23:34:57 +00:00
host = "node001"
2024-10-06 17:08:13 +00:00
dns = [{
domain = "recipes.serguzim.me"
2024-10-06 17:08:13 +00:00
}]
backup = [{
name = "tandoor_mediafiles"
type = "docker"
}]
2024-10-07 19:17:35 +00:00
monitoring = {
url = "/accounts/login/"
group = "4-services"
}
auth = false
database = true
s3 = false
},
2024-10-06 17:08:13 +00:00
"teamspeak_fallback" = {
2024-10-28 23:34:57 +00:00
host = "node001"
2024-10-13 19:02:19 +00:00
dns = [
{
domain = "ts.serguzim.me"
2024-10-13 19:02:19 +00:00
},
{
domain = "hook.serguzim.me"
2024-10-13 19:02:19 +00:00
name = "teamspeak_fallback-hook"
alias = "teamspeak_fallback"
}
]
2024-10-06 17:08:13 +00:00
backup = [{
2024-10-13 18:32:07 +00:00
name = "teamspeak_fallback_data"
2024-10-06 17:08:13 +00:00
type = "docker"
}]
2024-10-13 19:02:19 +00:00
monitoring = {
group = "7-support"
}
ports = [
{
description = "Teamspeak server"
port = 9987
protocol = "udp"
type = "firewall"
},
{
description = "Teamspeak filetransfer"
port = 30033
protocol = "tcp"
type = "firewall"
},
{
description = "Teamspeak serverquery"
port = 10011
protocol = "tcp"
type = "firewall"
}
]
2024-10-06 17:08:13 +00:00
auth = false
database = false
s3 = false
}
"telegraf" = {
2024-10-28 23:34:57 +00:00
host = "node001"
auth = false
database = true
s3 = false
},
2024-10-06 17:08:13 +00:00
"tinytinyrss" = {
2024-10-14 01:30:59 +00:00
host = "node001"
2024-10-06 17:08:13 +00:00
dns = [{
domain = "rss.serguzim.me"
2024-10-06 17:08:13 +00:00
}]
2024-10-07 19:17:35 +00:00
monitoring = {
url = "/tt-rss/"
group = "4-services"
}
2024-09-28 12:14:09 +00:00
auth = false
database = true
s3 = false
},
2024-10-06 17:08:13 +00:00
"umami" = {
2024-10-14 01:30:59 +00:00
host = "node001"
2024-10-06 17:08:13 +00:00
dns = [{
domain = "analytics.serguzim.me"
2024-10-06 17:08:13 +00:00
}]
2024-10-07 19:17:35 +00:00
monitoring = {
url = "/api/heartbeat"
group = "4-services"
}
auth = false
database = true
s3 = false
},
2024-10-06 17:08:13 +00:00
"vikunja" = {
2024-10-19 13:18:54 +00:00
host = "node001"
2024-10-06 17:08:13 +00:00
dns = [{
domain = "todo.serguzim.me"
2024-10-06 17:08:13 +00:00
}]
backup = [{
name = "vikunja_data"
type = "docker"
}]
2024-10-07 19:17:35 +00:00
monitoring = {
url = "/api/v1/info"
group = "4-services"
}
auth = true
auth_redirects = ["https://todo.serguzim.me/auth/openid/authserguzimme"]
database = true
s3 = false
2024-10-29 21:43:05 +00:00
mail = "todo"
2024-10-06 17:08:13 +00:00
},
"watchtower" = {
host = "*"
auth = false
database = false
s3 = false
2024-10-29 21:43:05 +00:00
mail = "watchtower"
},
"wiki_js" = {
2024-10-14 01:30:59 +00:00
host = "node001"
2024-10-06 17:08:13 +00:00
dns = [{
domain = "wiki.serguzim.me"
2024-10-06 17:08:13 +00:00
}]
2024-10-07 19:17:35 +00:00
monitoring = {
group = "4-services"
}
2024-09-28 12:14:09 +00:00
auth = true
auth_redirects = ["https://wiki.serguzim.me/login/f792bc7d-1a25-4437-944e-55eaf0111102/callback"]
database = true
s3 = false
2024-10-29 21:43:05 +00:00
mail = "wiki"
},
2024-10-06 17:08:13 +00:00
"woodpecker" = {
2024-10-28 23:34:57 +00:00
host = "node001"
dns = [
{
domain = "ci.serguzim.me"
},
{
domain = "agents.ci.serguzim.me"
name = "woodpecker-agents"
alias = "woodpecker"
}
]
2024-10-07 19:17:35 +00:00
monitoring = {
url = "/healthz"
group = "4-services"
}
auth = false
database = true
s3 = false
2024-10-06 17:08:13 +00:00
}
2024-09-27 23:59:53 +00:00
}