Compare commits
12
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
aa5826f6a4 | ||
|
|
48cc59e735 | ||
|
|
1ba0438b38 | ||
|
|
ba746c9c41 | ||
|
|
13c8ebe109 | ||
|
|
0327588463 | ||
|
|
b094e78620 | ||
|
|
fcdcb0102d | ||
|
|
2b168e5e34 | ||
|
|
edea22d4d1 | ||
|
|
6f7ae0e523 | ||
|
|
e742931489 |
@@ -35,3 +35,7 @@ override.tf.json
|
|||||||
# Ignore CLI configuration files
|
# Ignore CLI configuration files
|
||||||
.terraformrc
|
.terraformrc
|
||||||
terraform.rc
|
terraform.rc
|
||||||
|
|
||||||
|
module.tf.save*
|
||||||
|
terraform.tfstate*
|
||||||
|
.terraform.lock.hcl
|
||||||
|
|||||||
@@ -0,0 +1,12 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
data:
|
||||||
|
VPN_DNS_IP: MTAuMi4wLjE=
|
||||||
|
VPN_ENDPOINT_IP: MjEyLjguMjUzLjEzNw==
|
||||||
|
VPN_ENDPOINT_PORT: NTE4MjA=
|
||||||
|
WIREGUARD_PRIVATE_KEY: Y0grY0hLd3FMeXV3UlVlZy8wRjFYWVlDQVM4bkQwWGsxNmVOQlVLc2tYbz0=
|
||||||
|
WIREGUARD_PUBLIC_KEY: VVJwZVp4dHlVWEFVVUEwTVdjRmRDU2E3RitNdmNoSjRlTlNKVWV0S0VHaz0=
|
||||||
|
kind: Secret
|
||||||
|
metadata:
|
||||||
|
creationTimestamp: null
|
||||||
|
name: gluetun-secret-netherland
|
||||||
|
namespace: tservarr
|
||||||
@@ -0,0 +1,47 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
data:
|
||||||
|
prowlarr_add_bulk_indexer.sh: |
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
# install package with apk
|
||||||
|
apk add curl jq
|
||||||
|
# Base URL and API key
|
||||||
|
BASE_URL="https://tprowlarr.tryton.geeraert.eu"
|
||||||
|
API_KEY="c5655e0b915d46dbb68d80f40a2daae4"
|
||||||
|
|
||||||
|
APP_PROFILE_ID=1 # Set this to a valid App Profile Id
|
||||||
|
|
||||||
|
# Get the list of all available indexers
|
||||||
|
available_indexers=$(curl -s -X GET "$BASE_URL/api/v1/indexer/schema" \
|
||||||
|
-H "accept: application/json" \
|
||||||
|
-H "X-Api-Key: $API_KEY")
|
||||||
|
|
||||||
|
# Loop through each indexer and add it to Prowlarr
|
||||||
|
echo "$available_indexers" | jq -c '.[]' | while read -r indexer; do
|
||||||
|
indexer_name=$(echo "$indexer" | jq -r '.name')
|
||||||
|
indexer_settings=$(echo "$indexer" | jq -c '.')
|
||||||
|
|
||||||
|
# Add the AppProfileId to the indexer settings
|
||||||
|
indexer_settings=$(echo "$indexer_settings" | jq --argjson appProfileId "$APP_PROFILE_ID" '. + {AppProfileId: $appProfileId}')
|
||||||
|
|
||||||
|
echo "Adding indexer: $indexer_name"
|
||||||
|
|
||||||
|
curl -s -X POST "$BASE_URL/api/v1/indexer" \
|
||||||
|
-H "accept: application/json" \
|
||||||
|
-H "X-Api-Key: $API_KEY" \
|
||||||
|
-H "Content-Type: application/json" \
|
||||||
|
-d "$indexer_settings"
|
||||||
|
|
||||||
|
echo "Indexer $indexer_name added."
|
||||||
|
done
|
||||||
|
return 0
|
||||||
|
kind: ConfigMap
|
||||||
|
metadata:
|
||||||
|
annotations:
|
||||||
|
kubectl.kubernetes.io/last-applied-configuration: |
|
||||||
|
{"apiVersion":"v1","data":{"prowlarr_add_bulk_indexer.sh":"#!/bin/bash\n\n# Base URL and API key\nBASE_URL=\"https://prowlarr.tryton.geeraert.eu\"\nAPI_KEY=\"0cb77d794ab74f158daaae044ab850ee\"\n\nAPP_PROFILE_ID=1 # Set this to a valid App Profile Id\n\n# Get the list of all available indexers\navailable_indexers=$(curl -s -X GET \"$BASE_URL/api/v1/indexer/schema\" \\\n -H \"accept: application/json\" \\\n -H \"X-Api-Key: $API_KEY\")\n\n# Loop through each indexer and add it to Prowlarr\necho \"$available_indexers\" | jq -c '.[]' | while read -r indexer; do\n indexer_name=$(echo \"$indexer\" | jq -r '.name')\n indexer_settings=$(echo \"$indexer\" | jq -c '.')\n\n # Add the AppProfileId to the indexer settings\n indexer_settings=$(echo \"$indexer_settings\" | jq --argjson appProfileId \"$APP_PROFILE_ID\" '. + {AppProfileId: $appProfileId}')\n\n echo \"Adding indexer: $indexer_name\"\n\n curl -s -X POST \"$BASE_URL/api/v1/indexer\" \\\n -H \"accept: application/json\" \\\n -H \"X-Api-Key: $API_KEY\" \\\n -H \"Content-Type: application/json\" \\\n -d \"$indexer_settings\"\n\n echo \"Indexer $indexer_name added.\"\ndone\n"},"kind":"ConfigMap","metadata":{"annotations":{},"creationTimestamp":null,"name":"prowlarr-add-bulk-indexer","namespace":"servarr"}}
|
||||||
|
creationTimestamp: "2025-02-24T14:53:38Z"
|
||||||
|
name: prowlarr-add-bulk-indexer
|
||||||
|
namespace: tservarr
|
||||||
|
resourceVersion: "101531049"
|
||||||
|
uid: daa8c869-779c-49f2-a2ca-bad2d6d77035
|
||||||
@@ -0,0 +1,28 @@
|
|||||||
|
apiVersion: batch/v1
|
||||||
|
kind: Job
|
||||||
|
metadata:
|
||||||
|
name: prowlarr-bulk-add-indexers
|
||||||
|
namespace: tservarr
|
||||||
|
spec:
|
||||||
|
template:
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- name: prowlarr-bulk-add-indexers
|
||||||
|
image: alpine
|
||||||
|
imagePullPolicy: Always
|
||||||
|
volumeMounts:
|
||||||
|
- mountPath: /config
|
||||||
|
name: scripts
|
||||||
|
command:
|
||||||
|
- /bin/sh
|
||||||
|
- -c
|
||||||
|
- /config/prowlarr_add_bulk_indexer.sh
|
||||||
|
# command: ["chmod","+x","/config/prowlarr_add_bulk_indexer.sh",";","./config/prowlarr_add_bulk_indexer.sh"]
|
||||||
|
restartPolicy: Never
|
||||||
|
volumes:
|
||||||
|
- configMap:
|
||||||
|
defaultMode: 365
|
||||||
|
name: prowlarr-add-bulk-indexer
|
||||||
|
name: scripts
|
||||||
|
backoffLimit: 4
|
||||||
|
|
||||||
@@ -32,7 +32,10 @@ variable "kubernetes" {
|
|||||||
})))
|
})))
|
||||||
replicas = optional(number, 1)
|
replicas = optional(number, 1)
|
||||||
namespace = optional(string)
|
namespace = optional(string)
|
||||||
service_port = optional(number)
|
connected_namespace = optional(string, "")
|
||||||
|
# namespace = optional(string,coalesce(connected_namespace,""))
|
||||||
|
#block_namespace_creation = optional(bool, false)
|
||||||
|
service_port = optional(list(number))
|
||||||
service_type = optional(string, "ClusterIP")
|
service_type = optional(string, "ClusterIP")
|
||||||
service_name = optional(string)
|
service_name = optional(string)
|
||||||
liveness_tcp_socket = optional(number)
|
liveness_tcp_socket = optional(number)
|
||||||
@@ -44,13 +47,16 @@ variable "kubernetes" {
|
|||||||
secret_ref = optional(list(string))
|
secret_ref = optional(list(string))
|
||||||
config_map_ref = optional(list(string))
|
config_map_ref = optional(list(string))
|
||||||
extra_manifest = optional(list(string))
|
extra_manifest = optional(list(string))
|
||||||
requirements = optional(map(string), {
|
requirements = optional(map(string))
|
||||||
limits-cpu = "800m"
|
# requirements = optional(map(string), {
|
||||||
limits-memory = "500Mi"
|
# limits-cpu = "800m"
|
||||||
requests-cpu = "200m"
|
# limits-memory = "500Mi"
|
||||||
requests-memory = "200Mi"
|
# requests-cpu = "200m"
|
||||||
})
|
# requests-memory = "200Mi"
|
||||||
|
# })
|
||||||
|
dns_nameservers = optional(string)
|
||||||
environment_variables = optional(map(string), { name = "value" })
|
environment_variables = optional(map(string), { name = "value" })
|
||||||
|
security_context = optional(bool, false)
|
||||||
}))
|
}))
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -65,7 +71,7 @@ locals {
|
|||||||
pvc_size = pvc.pvc_size
|
pvc_size = pvc.pvc_size
|
||||||
mount_path = pvc.mount_path
|
mount_path = pvc.mount_path
|
||||||
storage_class_name = pvc.storage_class_name
|
storage_class_name = pvc.storage_class_name
|
||||||
namespace = coalesce(value.namespace, key)
|
namespace = coalesce(value.namespace, value.connected_namespace, key)
|
||||||
}] if value.enabled == true && value.pvc != null
|
}] if value.enabled == true && value.pvc != null
|
||||||
])
|
])
|
||||||
}
|
}
|
||||||
@@ -84,7 +90,7 @@ locals {
|
|||||||
data "kubernetes_all_namespaces" "allns" {}
|
data "kubernetes_all_namespaces" "allns" {}
|
||||||
|
|
||||||
resource "kubernetes_namespace" "automatic" {
|
resource "kubernetes_namespace" "automatic" {
|
||||||
for_each = { for key, value in var.kubernetes : key => value if value.enabled == true }
|
for_each = { for key, value in var.kubernetes : key => value if value.enabled == true && value.connected_namespace == "" }
|
||||||
metadata {
|
metadata {
|
||||||
annotations = {
|
annotations = {
|
||||||
name = coalesce(each.value.namespace, each.key)
|
name = coalesce(each.value.namespace, each.key)
|
||||||
@@ -122,10 +128,9 @@ resource "kubernetes_manifest" "service" {
|
|||||||
|
|
||||||
|
|
||||||
resource "kubernetes_persistent_volume_claim" "automatic-pvc" {
|
resource "kubernetes_persistent_volume_claim" "automatic-pvc" {
|
||||||
# for_each = { for key, value in var.kubernetes : key => value if value.enabled == true }
|
|
||||||
for_each = { for key, value in local.pvc_details : "${value.index}" => merge(value, { mew_key = value.index }) if value.pvc }
|
for_each = { for key, value in local.pvc_details : "${value.index}" => merge(value, { mew_key = value.index }) if value.pvc }
|
||||||
metadata {
|
metadata {
|
||||||
namespace = each.value.namespace
|
namespace = coalesce(each.value.namespace, each.key)
|
||||||
name = "${each.value.name}-pvc"
|
name = "${each.value.name}-pvc"
|
||||||
labels = {
|
labels = {
|
||||||
deployment_method = "Terraform"
|
deployment_method = "Terraform"
|
||||||
@@ -144,7 +149,7 @@ resource "kubernetes_persistent_volume_claim" "automatic-pvc" {
|
|||||||
resource "kubernetes_persistent_volume_claim" "automatic-pvc-database" {
|
resource "kubernetes_persistent_volume_claim" "automatic-pvc-database" {
|
||||||
for_each = { for key, value in var.kubernetes : key => value if value.database != null && value.enabled == true }
|
for_each = { for key, value in var.kubernetes : key => value if value.database != null && value.enabled == true }
|
||||||
metadata {
|
metadata {
|
||||||
namespace = each.value.namespace
|
namespace = coalesce(each.value.namespace, each.value.connected_namespace, each.key)
|
||||||
name = "${each.key}-db-pvc"
|
name = "${each.key}-db-pvc"
|
||||||
labels = {
|
labels = {
|
||||||
deployment_method = "Terraform"
|
deployment_method = "Terraform"
|
||||||
@@ -164,7 +169,7 @@ resource "kubernetes_persistent_volume_claim" "automatic-pvc-database" {
|
|||||||
resource "kubernetes_persistent_volume_claim" "automatic-pvc-redis" {
|
resource "kubernetes_persistent_volume_claim" "automatic-pvc-redis" {
|
||||||
for_each = { for key, value in var.kubernetes : key => value if value.redis != null && value.enabled == true }
|
for_each = { for key, value in var.kubernetes : key => value if value.redis != null && value.enabled == true }
|
||||||
metadata {
|
metadata {
|
||||||
namespace = each.value.namespace
|
namespace = coalesce(each.value.namespace, each.value.connected_namespace, each.key)
|
||||||
name = "${each.key}-redis-pvc"
|
name = "${each.key}-redis-pvc"
|
||||||
labels = {
|
labels = {
|
||||||
deployment_method = "Terraform"
|
deployment_method = "Terraform"
|
||||||
@@ -185,7 +190,7 @@ resource "kubernetes_service" "automatic_service" {
|
|||||||
for_each = { for key, value in var.kubernetes : key => value if value.service_port != null && value.enabled == true }
|
for_each = { for key, value in var.kubernetes : key => value if value.service_port != null && value.enabled == true }
|
||||||
metadata {
|
metadata {
|
||||||
name = "${each.key}-svc"
|
name = "${each.key}-svc"
|
||||||
namespace = coalesce(each.value.namespace, each.key)
|
namespace = coalesce(each.value.namespace, each.value.connected_namespace, each.key)
|
||||||
labels = {
|
labels = {
|
||||||
deployment_method = "Terraform"
|
deployment_method = "Terraform"
|
||||||
}
|
}
|
||||||
@@ -200,10 +205,19 @@ resource "kubernetes_service" "automatic_service" {
|
|||||||
selector = {
|
selector = {
|
||||||
app = each.key
|
app = each.key
|
||||||
}
|
}
|
||||||
port {
|
dynamic "port" {
|
||||||
port = each.value.service_port
|
for_each = each.value.service_port != null ? each.value.service_port : []
|
||||||
target_port = each.value.service_port
|
content {
|
||||||
|
port = port.value
|
||||||
|
target_port = port.value
|
||||||
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# port {
|
||||||
|
# port = each.value.service_port
|
||||||
|
# target_port = each.value.service_port
|
||||||
|
# }
|
||||||
type = each.value.service_type
|
type = each.value.service_type
|
||||||
|
|
||||||
|
|
||||||
@@ -216,7 +230,7 @@ resource "kubernetes_service" "automatic_service_database" {
|
|||||||
for_each = { for key, value in var.kubernetes : key => value if value.database != null && value.enabled == true }
|
for_each = { for key, value in var.kubernetes : key => value if value.database != null && value.enabled == true }
|
||||||
metadata {
|
metadata {
|
||||||
name = "${each.key}-db-svc"
|
name = "${each.key}-db-svc"
|
||||||
namespace = coalesce(each.value.namespace, each.key)
|
namespace = coalesce(each.value.namespace, each.value.connected_namespace, each.key)
|
||||||
labels = {
|
labels = {
|
||||||
deployment_method = "Terraform"
|
deployment_method = "Terraform"
|
||||||
}
|
}
|
||||||
@@ -241,7 +255,7 @@ resource "kubernetes_service" "automatic_service_redis" {
|
|||||||
for_each = { for key, value in var.kubernetes : key => value if value.redis != null && value.enabled == true }
|
for_each = { for key, value in var.kubernetes : key => value if value.redis != null && value.enabled == true }
|
||||||
metadata {
|
metadata {
|
||||||
name = "${each.key}-redis-svc"
|
name = "${each.key}-redis-svc"
|
||||||
namespace = coalesce(each.value.namespace, each.key)
|
namespace = coalesce(each.value.namespace, each.value.connected_namespace, each.key)
|
||||||
labels = {
|
labels = {
|
||||||
deployment_method = "Terraform"
|
deployment_method = "Terraform"
|
||||||
}
|
}
|
||||||
@@ -262,7 +276,7 @@ resource "kubernetes_service" "automatic_service_redis" {
|
|||||||
resource "kubernetes_deployment_v1" "automatic" {
|
resource "kubernetes_deployment_v1" "automatic" {
|
||||||
for_each = { for key, value in var.kubernetes : key => value if value.enabled == true }
|
for_each = { for key, value in var.kubernetes : key => value if value.enabled == true }
|
||||||
metadata {
|
metadata {
|
||||||
namespace = coalesce(each.value.namespace, each.key)
|
namespace = coalesce(each.value.namespace, each.value.connected_namespace, each.key)
|
||||||
name = coalesce(each.value.name, each.key)
|
name = coalesce(each.value.name, each.key)
|
||||||
|
|
||||||
labels = {
|
labels = {
|
||||||
@@ -293,10 +307,10 @@ resource "kubernetes_deployment_v1" "automatic" {
|
|||||||
image = each.value.image
|
image = each.value.image
|
||||||
name = coalesce(each.value.name, each.key)
|
name = coalesce(each.value.name, each.key)
|
||||||
dynamic "port" {
|
dynamic "port" {
|
||||||
for_each = each.value.service_port != null ? [""] : []
|
for_each = each.value.service_port != null ? each.value.service_port : []
|
||||||
content {
|
content {
|
||||||
container_port = each.value.service_port
|
container_port = port.value
|
||||||
name = each.key
|
name = "${each.key}-${port.value}"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -355,7 +369,20 @@ resource "kubernetes_deployment_v1" "automatic" {
|
|||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
dynamic "resources" {
|
||||||
|
for_each = each.value.requirements != null ? [1] : []
|
||||||
|
content {
|
||||||
|
limits = {
|
||||||
|
cpu = each.value.requirements.limits-cpu
|
||||||
|
memory = each.value.requirements.limits-memory
|
||||||
|
}
|
||||||
|
requests = {
|
||||||
|
cpu = each.value.requirements.requests-cpu
|
||||||
|
memory = each.value.requirements.requests-memory
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
# resources {
|
# resources {
|
||||||
# limits = {
|
# limits = {
|
||||||
@@ -368,6 +395,15 @@ resource "kubernetes_deployment_v1" "automatic" {
|
|||||||
# }
|
# }
|
||||||
# }
|
# }
|
||||||
|
|
||||||
|
dynamic "security_context" {
|
||||||
|
for_each = each.value.security_context == true ? [1] : []
|
||||||
|
content {
|
||||||
|
privileged = true
|
||||||
|
#capabilities = {
|
||||||
|
# add : ["NET_ADMIN", "NET_RAW"]
|
||||||
|
#}
|
||||||
|
}
|
||||||
|
}
|
||||||
dynamic "liveness_probe" {
|
dynamic "liveness_probe" {
|
||||||
for_each = each.value.liveness_tcp_socket != null || each.value.liveness_http_get != null ? [""] : []
|
for_each = each.value.liveness_tcp_socket != null || each.value.liveness_http_get != null ? [""] : []
|
||||||
content {
|
content {
|
||||||
@@ -378,7 +414,6 @@ resource "kubernetes_deployment_v1" "automatic" {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
dynamic "http_get" {
|
dynamic "http_get" {
|
||||||
for_each = each.value.liveness_http_get != null ? [""] : []
|
for_each = each.value.liveness_http_get != null ? [""] : []
|
||||||
content {
|
content {
|
||||||
@@ -392,7 +427,13 @@ resource "kubernetes_deployment_v1" "automatic" {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
dynamic "dns_config" {
|
||||||
|
for_each = each.value.dns_nameservers != null ? [1] : []
|
||||||
|
content {
|
||||||
|
nameservers = [each.value.dns_nameservers]
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
dynamic "volume" {
|
dynamic "volume" {
|
||||||
for_each = each.value.pvc != null ? each.value.pvc : {}
|
for_each = each.value.pvc != null ? each.value.pvc : {}
|
||||||
@@ -436,7 +477,7 @@ resource "kubernetes_deployment_v1" "database-automatic" {
|
|||||||
|
|
||||||
|
|
||||||
metadata {
|
metadata {
|
||||||
namespace = coalesce(each.value.namespace, each.key)
|
namespace = coalesce(each.value.namespace, each.value.connected_namespace, each.key)
|
||||||
name = "${coalesce(each.value.namespace, each.key)}-db"
|
name = "${coalesce(each.value.namespace, each.key)}-db"
|
||||||
labels = {
|
labels = {
|
||||||
app = each.key
|
app = each.key
|
||||||
@@ -561,7 +602,7 @@ resource "kubernetes_deployment_v1" "redis-automatic" {
|
|||||||
|
|
||||||
|
|
||||||
metadata {
|
metadata {
|
||||||
namespace = coalesce(each.value.namespace, each.key)
|
namespace = coalesce(each.value.namespace, each.value.connected_namespace, each.key)
|
||||||
name = "${coalesce(each.value.namespace, each.key)}-redis"
|
name = "${coalesce(each.value.namespace, each.key)}-redis"
|
||||||
labels = {
|
labels = {
|
||||||
app = each.key
|
app = each.key
|
||||||
|
|||||||
+490
-42
@@ -1,11 +1,12 @@
|
|||||||
kubernetes = {
|
kubernetes = {
|
||||||
bookstack = {
|
bookstack = {
|
||||||
namespace = "bookstack"
|
namespace = "bookstack"
|
||||||
enabled = true
|
# enabled = false
|
||||||
replicas = 01
|
replicas = 01
|
||||||
extra_manifest = ["/opt/kubernetes/Bookstack_kube/Bookstack.configmap.yaml", "/opt/kubernetes/Bookstack_kube/Bookstack.secret.yaml"]
|
extra_manifest = ["/opt/kubernetes/Bookstack_kube/Bookstack.configmap.yaml", "/opt/kubernetes/Bookstack_kube/Bookstack.secret.yaml"]
|
||||||
image = "linuxserver/bookstack:24.10.3"
|
#image = "linuxserver/bookstack:24.10.3"
|
||||||
service_port = 80
|
image = "linuxserver/bookstack:latest"
|
||||||
|
service_port = [80,443]
|
||||||
database = {
|
database = {
|
||||||
"image" = "lscr.io/linuxserver/mariadb"
|
"image" = "lscr.io/linuxserver/mariadb"
|
||||||
"port" = 3306
|
"port" = 3306
|
||||||
@@ -76,7 +77,7 @@ kubernetes = {
|
|||||||
# enabled = false
|
# enabled = false
|
||||||
name = "screeps-server"
|
name = "screeps-server"
|
||||||
image = "screepers/screeps-launcher"
|
image = "screepers/screeps-launcher"
|
||||||
service_port = 21025
|
service_port = [21025]
|
||||||
service_type = "LoadBalancer"
|
service_type = "LoadBalancer"
|
||||||
|
|
||||||
environment = {
|
environment = {
|
||||||
@@ -85,13 +86,13 @@ kubernetes = {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
requirements = {
|
requirements = {
|
||||||
limits-cpu = "900m"
|
limits-cpu = "1000m"
|
||||||
limits-memory = "600Mi"
|
limits-memory = "1Gi"
|
||||||
requests-cpu = "300m"
|
requests-cpu = "500m"
|
||||||
requests-memory = "400Mi"
|
requests-memory = "400Mi"
|
||||||
}
|
}
|
||||||
pvc = {
|
pvc = {
|
||||||
volume = {
|
screeps-volume = {
|
||||||
name = "screeps"
|
name = "screeps"
|
||||||
pvc_size = "1Gi"
|
pvc_size = "1Gi"
|
||||||
pvc = true
|
pvc = true
|
||||||
@@ -106,7 +107,7 @@ kubernetes = {
|
|||||||
enabled = false
|
enabled = false
|
||||||
name = "stirling-pdf"
|
name = "stirling-pdf"
|
||||||
image = "docker.stirlingpdf.com/stirlingtools/stirling-pdf:latest"
|
image = "docker.stirlingpdf.com/stirlingtools/stirling-pdf:latest"
|
||||||
service_port = 8080
|
service_port = [8080]
|
||||||
|
|
||||||
environment = {
|
environment = {
|
||||||
LANGS = {
|
LANGS = {
|
||||||
@@ -120,7 +121,7 @@ kubernetes = {
|
|||||||
requests-memory = "150Mi"
|
requests-memory = "150Mi"
|
||||||
}
|
}
|
||||||
pvc = {
|
pvc = {
|
||||||
volume = {
|
stirling-volume = {
|
||||||
name = "stirling-pdf"
|
name = "stirling-pdf"
|
||||||
pvc_size = "100Mi"
|
pvc_size = "100Mi"
|
||||||
pvc = true
|
pvc = true
|
||||||
@@ -133,10 +134,11 @@ kubernetes = {
|
|||||||
|
|
||||||
|
|
||||||
stash = {
|
stash = {
|
||||||
|
# enabled = false
|
||||||
replicas = 0
|
replicas = 0
|
||||||
name = "stash"
|
name = "stash"
|
||||||
image = "stashapp/stash:latest"
|
image = "stashapp/stash:latest"
|
||||||
service_port = 9999
|
service_port = [9999]
|
||||||
#extra_manifest = ["/opt/kubernetes/Terraform_kube/external_manifests/stash/stash-reddit-dowloader.configmap.yml"]
|
#extra_manifest = ["/opt/kubernetes/Terraform_kube/external_manifests/stash/stash-reddit-dowloader.configmap.yml"]
|
||||||
environment = {
|
environment = {
|
||||||
STASH_STASH = {
|
STASH_STASH = {
|
||||||
@@ -191,11 +193,116 @@ kubernetes = {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
stashgluetun = {
|
||||||
|
enabled = false
|
||||||
|
connected_namespace = "stash"
|
||||||
|
dns_nameservers = "10.2.0.1"
|
||||||
|
replicas = 01
|
||||||
|
image = "qmcgaw/gluetun:latest"
|
||||||
|
service_port = [8888]
|
||||||
|
extra_manifest = ["/opt/kubernetes/Terraform_kube/external_manifests/stash/gluetun-secret-netherland.yaml"]
|
||||||
|
security_context = true
|
||||||
|
# requirements = {
|
||||||
|
# limits-cpu = "800Mi"
|
||||||
|
# limits-memory = "800Mi"
|
||||||
|
# requests-cpu = "800Mi"
|
||||||
|
# requests-memory = "800Mi"
|
||||||
|
# }
|
||||||
|
environment = {
|
||||||
|
DNS_ADDRESS = {
|
||||||
|
value_from = {
|
||||||
|
secret_key_ref = {
|
||||||
|
name = "gluetun-secret-netherland"
|
||||||
|
key = "VPN_DNS_IP"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
WIREGUARD_ENDPOINT_IP = {
|
||||||
|
value_from = {
|
||||||
|
secret_key_ref = {
|
||||||
|
name = "gluetun-secret-netherland"
|
||||||
|
key = "VPN_ENDPOINT_IP"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
WIREGUARD_ENDPOINT_PORT = {
|
||||||
|
value_from = {
|
||||||
|
secret_key_ref = {
|
||||||
|
name = "gluetun-secret-netherland"
|
||||||
|
key = "VPN_ENDPOINT_PORT"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
WIREGUARD_PRIVATE_KEY = {
|
||||||
|
value_from = {
|
||||||
|
secret_key_ref = {
|
||||||
|
name = "gluetun-secret-netherland"
|
||||||
|
key = "WIREGUARD_PRIVATE_KEY"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
WIREGUARD_PUBLIC_KEY = {
|
||||||
|
value_from = {
|
||||||
|
secret_key_ref = {
|
||||||
|
name = "gluetun-secret-netherland"
|
||||||
|
key = "WIREGUARD_PUBLIC_KEY"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
# SHADOWSOCKS = {
|
||||||
|
HTTPPROXY = {
|
||||||
|
value = "on"
|
||||||
|
}
|
||||||
|
#SHADOWSOCKS_LOG = {
|
||||||
|
HTTPPROXY_LOG = {
|
||||||
|
value = "on"
|
||||||
|
}
|
||||||
|
HTTPPROXY_LISTENING_ADDRESS = {
|
||||||
|
#SHADOWSOCKS_LISTENING_ADDRESS = {
|
||||||
|
value = "0.0.0.0:8888"
|
||||||
|
}
|
||||||
|
# HTTPPROXY_USER = {
|
||||||
|
# value = "user"
|
||||||
|
# }
|
||||||
|
|
||||||
|
#SHADOWSOCKS_PASSWORD = {
|
||||||
|
# HTTPPROXY_PASSWORD = {
|
||||||
|
# value = "user"
|
||||||
|
#}
|
||||||
|
DNS_KEEP_NAMESERVER = {
|
||||||
|
value = "off"
|
||||||
|
}
|
||||||
|
VPN_SERVICE_PROVIDER = {
|
||||||
|
value = "custom"
|
||||||
|
}
|
||||||
|
VPN_TYPE = {
|
||||||
|
value = "wireguard"
|
||||||
|
}
|
||||||
|
WIREGUARD_ADDRESSES = {
|
||||||
|
value = "10.2.0.2/32"
|
||||||
|
}
|
||||||
|
FIREWALL_INPUT_PORTS = {
|
||||||
|
value = "8081,7878,9696,9091,51413,8080,6881,8989,8191,8888,8000"
|
||||||
|
}
|
||||||
|
PUBLICIP_API = {
|
||||||
|
value = "ip2location"
|
||||||
|
}
|
||||||
|
|
||||||
|
HEALTH_TARGET_ADDRESS = {
|
||||||
|
value = "protonvpn.com"
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
onitama = {
|
onitama = {
|
||||||
enabled = true
|
enabled = false
|
||||||
namespace = "onitama"
|
namespace = "onitama"
|
||||||
image = "ghcr.io/jackadamson/onitama:latest"
|
image = "ghcr.io/jackadamson/onitama:latest"
|
||||||
service_port = 8080
|
service_port = [8080]
|
||||||
requirements = {
|
requirements = {
|
||||||
limits-cpu = "50m"
|
limits-cpu = "50m"
|
||||||
limits-memory = "50Mi"
|
limits-memory = "50Mi"
|
||||||
@@ -249,7 +356,7 @@ kubernetes = {
|
|||||||
redis = {
|
redis = {
|
||||||
enabled = false
|
enabled = false
|
||||||
image = "redis"
|
image = "redis"
|
||||||
service_port = 6379
|
service_port = [6379]
|
||||||
liveness_tcp_socket = 6379
|
liveness_tcp_socket = 6379
|
||||||
# environment_variables = [{
|
# environment_variables = [{
|
||||||
# "name" : "redis_PORT",
|
# "name" : "redis_PORT",
|
||||||
@@ -260,7 +367,7 @@ kubernetes = {
|
|||||||
vulcan = {
|
vulcan = {
|
||||||
enabled = false
|
enabled = false
|
||||||
image = "localhost:31795/vulcan-frontend:latest"
|
image = "localhost:31795/vulcan-frontend:latest"
|
||||||
service_port = 80
|
service_port = [80]
|
||||||
requirements = {
|
requirements = {
|
||||||
limits-cpu = "50m"
|
limits-cpu = "50m"
|
||||||
limits-memory = "50Mi"
|
limits-memory = "50Mi"
|
||||||
@@ -288,7 +395,7 @@ kubernetes = {
|
|||||||
requests-cpu = "50m"
|
requests-cpu = "50m"
|
||||||
requests-memory = "50Mi"
|
requests-memory = "50Mi"
|
||||||
}
|
}
|
||||||
service_port = 3000
|
service_port = [3000]
|
||||||
pvc_size = "1Gi"
|
pvc_size = "1Gi"
|
||||||
mount_path = "/data"
|
mount_path = "/data"
|
||||||
}
|
}
|
||||||
@@ -301,7 +408,7 @@ kubernetes = {
|
|||||||
requests-cpu = "50m"
|
requests-cpu = "50m"
|
||||||
requests-memory = "50Mi"
|
requests-memory = "50Mi"
|
||||||
}
|
}
|
||||||
service_port = 3000
|
service_port = [3000]
|
||||||
pvc_size = "1Gi"
|
pvc_size = "1Gi"
|
||||||
mount_path = "/data"
|
mount_path = "/data"
|
||||||
}
|
}
|
||||||
@@ -309,7 +416,7 @@ kubernetes = {
|
|||||||
notmuch = {
|
notmuch = {
|
||||||
enabled = false
|
enabled = false
|
||||||
image = "kalbasit/notmuch"
|
image = "kalbasit/notmuch"
|
||||||
service_port = 80
|
service_port = [80]
|
||||||
}
|
}
|
||||||
|
|
||||||
spider = {
|
spider = {
|
||||||
@@ -322,7 +429,7 @@ kubernetes = {
|
|||||||
requests-cpu = "50m"
|
requests-cpu = "50m"
|
||||||
requests-memory = "50Mi"
|
requests-memory = "50Mi"
|
||||||
}
|
}
|
||||||
service_port = 8080
|
service_port = [8080]
|
||||||
pvc = {
|
pvc = {
|
||||||
spider-data = {
|
spider-data = {
|
||||||
pvc = true
|
pvc = true
|
||||||
@@ -342,7 +449,7 @@ kubernetes = {
|
|||||||
requests-cpu = "50m"
|
requests-cpu = "50m"
|
||||||
requests-memory = "50Mi"
|
requests-memory = "50Mi"
|
||||||
}
|
}
|
||||||
service_port = 80
|
service_port = [80]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -350,16 +457,16 @@ kubernetes = {
|
|||||||
enabled = false
|
enabled = false
|
||||||
namespace = "paper"
|
namespace = "paper"
|
||||||
image = "ghcr.io/paperless-ngx/paperless-ngx:latest"
|
image = "ghcr.io/paperless-ngx/paperless-ngx:latest"
|
||||||
service_port = 8000
|
service_port = [8000]
|
||||||
database = {
|
database = {
|
||||||
image = "docker.io/library/postgres:15" }
|
image = "docker.io/library/postgres:15" }
|
||||||
redis = {
|
redis = {
|
||||||
image = "docker.io/library/redis:7" }
|
image = "docker.io/library/redis:7" }
|
||||||
requirements = {
|
requirements = {
|
||||||
limits-cpu = "800Mi"
|
limits-cpu = "800m"
|
||||||
limits-memory = "800Mi"
|
limits-memory = "800Mi"
|
||||||
requests-cpu = "800Mi"
|
requests-cpu = "10m"
|
||||||
requests-memory = "800Mi"
|
requests-memory = "300Mi"
|
||||||
}
|
}
|
||||||
extra_manifest = ["/opt/kubernetes/Terraform_kube/external_manifests/paperless/Paperless.secret.yaml"]
|
extra_manifest = ["/opt/kubernetes/Terraform_kube/external_manifests/paperless/Paperless.secret.yaml"]
|
||||||
#config_map_ref = ["config"]
|
#config_map_ref = ["config"]
|
||||||
@@ -393,13 +500,13 @@ kubernetes = {
|
|||||||
value = "https://paper.tryton.geeraert.eu"
|
value = "https://paper.tryton.geeraert.eu"
|
||||||
}
|
}
|
||||||
PAPERLESS_TIKA_ENABLED = {
|
PAPERLESS_TIKA_ENABLED = {
|
||||||
value = "1"
|
value = "0"
|
||||||
}
|
}
|
||||||
PAPERLESS_TIKA_GOTENBERG_ENDPOINT = {
|
PAPERLESS_TIKA_GOTENBERG_ENDPOINT = {
|
||||||
value = "http://gotenberg-svc.gotenberg.svc:3000"
|
value = "http://gotenberg-svc.paper.svc:3000"
|
||||||
}
|
}
|
||||||
PAPERLESS_TIKA_ENDPOINT = {
|
PAPERLESS_TIKA_ENDPOINT = {
|
||||||
value = "http://tika-svc.tika.svc:9998"
|
value = "http://tika-svc.paper.svc:9998"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -451,12 +558,12 @@ kubernetes = {
|
|||||||
pvc_size = "2Mi"
|
pvc_size = "2Mi"
|
||||||
mount_path = "/usr/src/paperless/data"
|
mount_path = "/usr/src/paperless/data"
|
||||||
}
|
}
|
||||||
export = {
|
# export = {
|
||||||
host_path = "/tmp"
|
# host_path = "/tmp"
|
||||||
name = "export"
|
# name = "export"
|
||||||
pvc_size = "2Mi"
|
# pvc_size = "2Mi"
|
||||||
mount_path = "/usr/src/paperless/export"
|
# mount_path = "/usr/src/paperless/export"
|
||||||
}
|
# }
|
||||||
consume = {
|
consume = {
|
||||||
pvc = true
|
pvc = true
|
||||||
name = "consume"
|
name = "consume"
|
||||||
@@ -468,8 +575,9 @@ kubernetes = {
|
|||||||
gotenberg = {
|
gotenberg = {
|
||||||
enabled = false
|
enabled = false
|
||||||
name = "gotenberg"
|
name = "gotenberg"
|
||||||
|
connected_namespace = "paper"
|
||||||
image = "gotenberg/gotenberg:7.9.2"
|
image = "gotenberg/gotenberg:7.9.2"
|
||||||
service_port = 3000
|
service_port = [3000]
|
||||||
|
|
||||||
requirements = {
|
requirements = {
|
||||||
limits-cpu = "100m"
|
limits-cpu = "100m"
|
||||||
@@ -483,8 +591,9 @@ kubernetes = {
|
|||||||
tika = {
|
tika = {
|
||||||
enabled = false
|
enabled = false
|
||||||
name = "tika"
|
name = "tika"
|
||||||
|
connected_namespace = "paper"
|
||||||
image = "ghcr.io/paperless-ngx/tika"
|
image = "ghcr.io/paperless-ngx/tika"
|
||||||
service_port = 9998
|
service_port = [9998]
|
||||||
|
|
||||||
requirements = {
|
requirements = {
|
||||||
limits-cpu = "100m"
|
limits-cpu = "100m"
|
||||||
@@ -505,7 +614,7 @@ kubernetes = {
|
|||||||
namespace = "next"
|
namespace = "next"
|
||||||
replicas = 01
|
replicas = 01
|
||||||
image = "nextcloud:29.0.3-apache"
|
image = "nextcloud:29.0.3-apache"
|
||||||
service_port = 80
|
service_port = [80]
|
||||||
extra_manifest = ["/opt/kubernetes/Nextcloud_kube/next.secret.yaml"]
|
extra_manifest = ["/opt/kubernetes/Nextcloud_kube/next.secret.yaml"]
|
||||||
database = {
|
database = {
|
||||||
image = "docker.io/library/postgres:14" }
|
image = "docker.io/library/postgres:14" }
|
||||||
@@ -597,7 +706,7 @@ kubernetes = {
|
|||||||
enabled = false
|
enabled = false
|
||||||
name = "neko"
|
name = "neko"
|
||||||
image = "ghcr.io/m1k1o/neko/firefox:latest"
|
image = "ghcr.io/m1k1o/neko/firefox:latest"
|
||||||
service_port = 8080
|
service_port = [8080]
|
||||||
|
|
||||||
environment = {
|
environment = {
|
||||||
|
|
||||||
@@ -627,7 +736,7 @@ kubernetes = {
|
|||||||
homeassistant = {
|
homeassistant = {
|
||||||
enabled = false
|
enabled = false
|
||||||
image = "ghcr.io/home-assistant/home-assistant:stable"
|
image = "ghcr.io/home-assistant/home-assistant:stable"
|
||||||
service_port = 8123
|
service_port = [8123]
|
||||||
|
|
||||||
environment = {
|
environment = {
|
||||||
|
|
||||||
@@ -659,9 +768,10 @@ kubernetes = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
jellyfin = {
|
jellyfin = {
|
||||||
enabled = false
|
# enabled = false
|
||||||
|
replicas = 0
|
||||||
image = "jellyfin/jellyfin:latest"
|
image = "jellyfin/jellyfin:latest"
|
||||||
service_port = 8096
|
service_port = [8096]
|
||||||
|
|
||||||
environment = {
|
environment = {
|
||||||
|
|
||||||
@@ -698,9 +808,9 @@ kubernetes = {
|
|||||||
|
|
||||||
}
|
}
|
||||||
dupeguru = {
|
dupeguru = {
|
||||||
# enabled = false
|
enabled = false
|
||||||
image = "jlesage/dupeguru"
|
image = "jlesage/dupeguru"
|
||||||
service_port = 5800
|
service_port = [5800]
|
||||||
|
|
||||||
pvc = {
|
pvc = {
|
||||||
dupeguru-config = {
|
dupeguru-config = {
|
||||||
@@ -730,4 +840,342 @@ kubernetes = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
pinchflat = {
|
||||||
|
enabled = false
|
||||||
|
connected_namespace = "screeps"
|
||||||
|
image = "ghcr.io/kieraneglin/pinchflat:latest"
|
||||||
|
service_port = [8945]
|
||||||
|
|
||||||
|
pvc = {
|
||||||
|
pinchflat-config = {
|
||||||
|
pvc = true
|
||||||
|
name = "pinchflat-config"
|
||||||
|
pvc_size = "2Mi"
|
||||||
|
mount_path = "/config"
|
||||||
|
}
|
||||||
|
pinchflat-storage = {
|
||||||
|
pvc = true
|
||||||
|
name = "pinchflat-storage"
|
||||||
|
pvc_size = "2Mi"
|
||||||
|
mount_path = "/downloads"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
requirements = {
|
||||||
|
limits-cpu = "900m"
|
||||||
|
limits-memory = "600Mi"
|
||||||
|
requests-cpu = "300m"
|
||||||
|
requests-memory = "400Mi"
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
jobspy = {
|
||||||
|
enabled = false
|
||||||
|
connected_namespace = "stash"
|
||||||
|
image = "rainmanjam/jobspy-api:latest"
|
||||||
|
service_port = [8000]
|
||||||
|
environment = {
|
||||||
|
ENABLE_API_KEY_AUTH = {
|
||||||
|
value = "true"
|
||||||
|
}
|
||||||
|
API_KEYS = {
|
||||||
|
value = "true"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
requirements = {
|
||||||
|
limits-cpu = "900m"
|
||||||
|
limits-memory = "600Mi"
|
||||||
|
requests-cpu = "300m"
|
||||||
|
requests-memory = "400Mi"
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
gluetun = {
|
||||||
|
enabled = false
|
||||||
|
namespace = "tservarr"
|
||||||
|
dns_nameservers = "10.2.0.1"
|
||||||
|
replicas = 01
|
||||||
|
image = "qmcgaw/gluetun:latest"
|
||||||
|
service_port = [8888]
|
||||||
|
extra_manifest = ["/opt/kubernetes/Terraform_kube/external_manifests/servarr/gluetun-secret-netherland.yaml"]
|
||||||
|
security_context = true
|
||||||
|
# requirements = {
|
||||||
|
# limits-cpu = "800Mi"
|
||||||
|
# limits-memory = "800Mi"
|
||||||
|
# requests-cpu = "800Mi"
|
||||||
|
# requests-memory = "800Mi"
|
||||||
|
# }
|
||||||
|
environment = {
|
||||||
|
DNS_ADDRESS = {
|
||||||
|
value_from = {
|
||||||
|
secret_key_ref = {
|
||||||
|
name = "gluetun-secret-netherland"
|
||||||
|
key = "VPN_DNS_IP"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
WIREGUARD_ENDPOINT_IP = {
|
||||||
|
value_from = {
|
||||||
|
secret_key_ref = {
|
||||||
|
name = "gluetun-secret-netherland"
|
||||||
|
key = "VPN_ENDPOINT_IP"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
WIREGUARD_ENDPOINT_PORT = {
|
||||||
|
value_from = {
|
||||||
|
secret_key_ref = {
|
||||||
|
name = "gluetun-secret-netherland"
|
||||||
|
key = "VPN_ENDPOINT_PORT"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
WIREGUARD_PRIVATE_KEY = {
|
||||||
|
value_from = {
|
||||||
|
secret_key_ref = {
|
||||||
|
name = "gluetun-secret-netherland"
|
||||||
|
key = "WIREGUARD_PRIVATE_KEY"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
WIREGUARD_PUBLIC_KEY = {
|
||||||
|
value_from = {
|
||||||
|
secret_key_ref = {
|
||||||
|
name = "gluetun-secret-netherland"
|
||||||
|
key = "WIREGUARD_PUBLIC_KEY"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
# SHADOWSOCKS = {
|
||||||
|
HTTPPROXY = {
|
||||||
|
value = "on"
|
||||||
|
}
|
||||||
|
#SHADOWSOCKS_LOG = {
|
||||||
|
HTTPPROXY_LOG = {
|
||||||
|
value = "on"
|
||||||
|
}
|
||||||
|
HTTPPROXY_LISTENING_ADDRESS = {
|
||||||
|
#SHADOWSOCKS_LISTENING_ADDRESS = {
|
||||||
|
value = "0.0.0.0:8888"
|
||||||
|
}
|
||||||
|
# HTTPPROXY_USER = {
|
||||||
|
# value = "user"
|
||||||
|
# }
|
||||||
|
|
||||||
|
#SHADOWSOCKS_PASSWORD = {
|
||||||
|
# HTTPPROXY_PASSWORD = {
|
||||||
|
# value = "user"
|
||||||
|
#}
|
||||||
|
DNS_KEEP_NAMESERVER = {
|
||||||
|
value = "off"
|
||||||
|
}
|
||||||
|
VPN_SERVICE_PROVIDER = {
|
||||||
|
value = "custom"
|
||||||
|
}
|
||||||
|
VPN_TYPE = {
|
||||||
|
value = "wireguard"
|
||||||
|
}
|
||||||
|
WIREGUARD_ADDRESSES = {
|
||||||
|
value = "10.2.0.2/32"
|
||||||
|
}
|
||||||
|
FIREWALL_INPUT_PORTS = {
|
||||||
|
value = "8081,7878,9696,9091,51413,8080,6881,8989,8191,8888,8000"
|
||||||
|
}
|
||||||
|
PUBLICIP_API = {
|
||||||
|
value = "ip2location"
|
||||||
|
}
|
||||||
|
|
||||||
|
HEALTH_TARGET_ADDRESS = {
|
||||||
|
value = "protonvpn.com"
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
prowlarr = {
|
||||||
|
enabled = false
|
||||||
|
image = "linuxserver/prowlarr:latest"
|
||||||
|
connected_namespace = "tservarr"
|
||||||
|
# dns_nameservers = "10.2.0.1"
|
||||||
|
service_port = [9696]
|
||||||
|
|
||||||
|
environment = {
|
||||||
|
PUID = {
|
||||||
|
value = "1000"
|
||||||
|
}
|
||||||
|
PGID = {
|
||||||
|
value = "1000"
|
||||||
|
}
|
||||||
|
TZ = {
|
||||||
|
value = "Etc/UTC"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
# requirements = {
|
||||||
|
# limits-cpu = "1000m"
|
||||||
|
# limits-memory = "1Gi"
|
||||||
|
# requests-cpu = "500m"
|
||||||
|
# requests-memory = "400Mi"
|
||||||
|
# }
|
||||||
|
pvc = {
|
||||||
|
prowlarr-config = {
|
||||||
|
name = "prowlarr-config"
|
||||||
|
pvc_size = "10Mi"
|
||||||
|
pvc = true
|
||||||
|
mount_path = "/config"
|
||||||
|
}
|
||||||
|
servarr-data = {
|
||||||
|
name = "servarr-data"
|
||||||
|
pvc_size = "10Mi"
|
||||||
|
pvc = false
|
||||||
|
host_path = "/data"
|
||||||
|
mount_path = "/disk"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
radarr = {
|
||||||
|
enabled = false
|
||||||
|
image = "lscr.io/linuxserver/radarr:latest"
|
||||||
|
connected_namespace = "tservarr"
|
||||||
|
service_port = [7878]
|
||||||
|
|
||||||
|
environment = {
|
||||||
|
PUID = {
|
||||||
|
value = "1000"
|
||||||
|
}
|
||||||
|
PGID = {
|
||||||
|
value = "1000"
|
||||||
|
}
|
||||||
|
TZ = {
|
||||||
|
value = "Etc/UTC"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
# requirements = {
|
||||||
|
# limits-cpu = "1000m"
|
||||||
|
# limits-memory = "1Gi"
|
||||||
|
# requests-cpu = "500m"
|
||||||
|
# requests-memory = "400Mi"
|
||||||
|
# }
|
||||||
|
pvc = {
|
||||||
|
radarr-config = {
|
||||||
|
name = "radarr-config"
|
||||||
|
pvc_size = "10Mi"
|
||||||
|
pvc = true
|
||||||
|
mount_path = "/config"
|
||||||
|
}
|
||||||
|
servarr-data = {
|
||||||
|
name = "servarr-data"
|
||||||
|
pvc_size = "10Mi"
|
||||||
|
pvc = false
|
||||||
|
host_path = "/data"
|
||||||
|
mount_path = "/disk"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
sonarr = {
|
||||||
|
enabled = false
|
||||||
|
image = "lscr.io/linuxserver/sonarr:latest"
|
||||||
|
connected_namespace = "tservarr"
|
||||||
|
service_port = [8989]
|
||||||
|
|
||||||
|
environment = {
|
||||||
|
PUID = {
|
||||||
|
value = "1000"
|
||||||
|
}
|
||||||
|
PGID = {
|
||||||
|
value = "1000"
|
||||||
|
}
|
||||||
|
TZ = {
|
||||||
|
value = "Etc/UTC"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
# requirements = {
|
||||||
|
# limits-cpu = "1000m"
|
||||||
|
# limits-memory = "1Gi"
|
||||||
|
# requests-cpu = "500m"
|
||||||
|
# requests-memory = "400Mi"
|
||||||
|
# }
|
||||||
|
pvc = {
|
||||||
|
sonarr-config = {
|
||||||
|
name = "sonarr-config"
|
||||||
|
pvc_size = "10Mi"
|
||||||
|
pvc = true
|
||||||
|
mount_path = "/config"
|
||||||
|
}
|
||||||
|
servarr-data = {
|
||||||
|
name = "servarr-data"
|
||||||
|
pvc_size = "10Mi"
|
||||||
|
pvc = false
|
||||||
|
host_path = "/data"
|
||||||
|
mount_path = "/disk"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
flaresolverr = {
|
||||||
|
enabled = false
|
||||||
|
image = "ghcr.io/flaresolverr/flaresolverr:latest"
|
||||||
|
connected_namespace = "tservarr"
|
||||||
|
service_port = [8191]
|
||||||
|
|
||||||
|
environment = {
|
||||||
|
PUID = {
|
||||||
|
value = "1000"
|
||||||
|
}
|
||||||
|
PGID = {
|
||||||
|
value = "1000"
|
||||||
|
}
|
||||||
|
TZ = {
|
||||||
|
value = "Etc/UTC"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
# requirements = {
|
||||||
|
# limits-cpu = "1000m"
|
||||||
|
# limits-memory = "1Gi"
|
||||||
|
# requests-cpu = "500m"
|
||||||
|
# requests-memory = "400Mi"
|
||||||
|
# }
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
poste = {
|
||||||
|
enabled = false
|
||||||
|
image = "analogic/poste.io:latest"
|
||||||
|
service_port = [443]
|
||||||
|
|
||||||
|
environment = {
|
||||||
|
PUID = {
|
||||||
|
value = "1000"
|
||||||
|
}
|
||||||
|
PGID = {
|
||||||
|
value = "1000"
|
||||||
|
}
|
||||||
|
TZ = {
|
||||||
|
value = "Etc/UTC"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
# requirements = {
|
||||||
|
# limits-cpu = "1000m"
|
||||||
|
# limits-memory = "1Gi"
|
||||||
|
# requests-cpu = "500m"
|
||||||
|
# requests-memory = "400Mi"
|
||||||
|
# }
|
||||||
|
|
||||||
|
pvc = {
|
||||||
|
poste-data = {
|
||||||
|
name = "poste-data"
|
||||||
|
pvc_size = "10Mi"
|
||||||
|
pvc = true
|
||||||
|
mount_path = "/data"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user