3 Commits
Author SHA1 Message Date
pi-ux-ce 6e07a68e90 enable django 2025-06-22 17:10:32 +01:00
pi-ux-ce 6ee3494165 try matching version of existing helm 2025-06-05 11:40:34 +01:00
pi-ux-ce 84e9172eac enable immich , still some work to do but close to the end 2025-06-03 23:04:25 +01:00
5 changed files with 327 additions and 8 deletions
@@ -0,0 +1,11 @@
apiVersion: v1
data:
DB_DATABASE_NAME: ZGphbmdv
DB_HOST: ZGphbmdvLWRiLXN2Yw==
DB_PASSWORD: U3VmZnJhZ2UtTW9uZXliYWdzLUlsbHVzaW9uNw==
DB_USERNAME: ZGphbmdvX3VzZXJuYW1l
kind: Secret
metadata:
creationTimestamp: null
name: django-db-credentials
namespace: django
File diff suppressed because one or more lines are too long
@@ -0,0 +1,11 @@
apiVersion: v1
data:
DB_DATABASE_NAME: aW1taWNo
DB_HOST: aW1taWNodC1kYi1zdmM=
DB_PASSWORD: U3Bvb24tQm9yb3VnaC1CYXNpczg=
DB_USERNAME: aW1taWNoX3VzZXJuYW1l
kind: Secret
metadata:
creationTimestamp: null
name: immich-db-credentials
namespace: immicht
+7
View File
@@ -15,6 +15,7 @@ variable "kubernetes" {
name = string
pvc = optional(bool, false)
config_map = optional(bool, false)
secret = optional(bool, false)
host_path = optional(string)
pvc_size = optional(string)
storage_class_name = optional(string, "nfs-storage-intelligent")
@@ -463,6 +464,12 @@ resource "kubernetes_deployment_v1" "automatic" {
}
}
dynamic "secret" {
for_each = volume.value.secret != null ? [1] : []
content {
secret_name = volume.value.secret
}
}
}
}
+288 -6
View File
@@ -1,7 +1,7 @@
kubernetes = {
bookstack = {
namespace = "bookstack"
# enabled = false
#namespace = "bookstack"
#enabled = false
replicas = 01
extra_manifest = ["/opt/kubernetes/Bookstack_kube/Bookstack.configmap.yaml", "/opt/kubernetes/Bookstack_kube/Bookstack.secret.yaml"]
#image = "linuxserver/bookstack:24.10.3"
@@ -194,7 +194,7 @@ kubernetes = {
}
gluetun = {
#enabled = false
# enabled = false
dns_nameservers = "10.2.0.1"
replicas = 01
image = "qmcgaw/gluetun:latest"
@@ -1042,7 +1042,40 @@ kubernetes = {
}
}
recommendarr = {
enabled = false
image = "tannermiddleton/recommendarr:latest"
connected_namespace = "servarr"
#replicas = 0
service_port = [3000]
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 = {
recommendarr-config = {
name = "recommendarr-config"
pvc_size = "10Mi"
pvc = true
mount_path = "/app/server/data"
}
}
}
qbittorrent = {
#enabled = false
image = "lscr.io/linuxserver/qbittorrent:latest"
@@ -1094,9 +1127,8 @@ kubernetes = {
image = "alexfozor/flaresolverr:pr-1300-experimental"
connected_namespace = "servarr"
enabled = false
#enabled = false
image = "ghcr.io/flaresolverr/flaresolverr:latest"
connected_namespace = "tservarr"
service_port = [8191]
environment = {
@@ -1125,7 +1157,7 @@ kubernetes = {
poste = {
enabled = false
image = "analogic/poste.io:latest"
service_port = [25,80,110,143,443,465,587,993,995,4190]
service_port = [25, 80, 110, 143, 443, 465, 587, 993, 995, 4190]
environment = {
PUID = {
@@ -1239,4 +1271,254 @@ kubernetes = {
}
immicht = {
enabled = false
#replicas = 0
namespace = "immicht"
image = "ghcr.io/immich-app/immich-server:v1.134.0"
service_port = [2283]
database = {
#image = "ghcr.io/immich-app/postgres:14-vectorchord0.3.0-pgvectors0.2.0@sha256:fa4f6e0971f454cd95fec5a9aaed2ed93d8f46725cc6bc61e0698e97dba96da1"
image = "docker.io/tensorchord/pgvecto-rs:pg14-v0.2.0"
}
redis = {
image = "docker.io/bitnami/redis:7.2.5-debian-12-r0" }
requirements = {
limits-cpu = "800m"
limits-memory = "800Mi"
requests-cpu = "10m"
requests-memory = "300Mi"
}
extra_manifest = ["/opt/kubernetes/Terraform_kube/external_manifests/immich/immich-db.secret.yaml"]
environment = {
DB_DATABASE_NAME = {
value_from = {
secret_key_ref = {
name = "immich-db-credentials"
key = "DB_DATABASE_NAME"
}
}
}
DB_USERNAME = {
value_from = {
secret_key_ref = {
name = "immich-db-credentials"
key = "DB_USERNAME"
}
}
}
DB_PASSWORD = {
value_from = {
secret_key_ref = {
name = "immich-db-credentials"
key = "DB_PASSWORD"
}
}
}
POSTGRES_DATABASE = {
value_from = {
secret_key_ref = {
name = "immich-db-credentials"
key = "DB_DATABASE_NAME"
}
}
}
POSTGRES_USER = {
value_from = {
secret_key_ref = {
name = "immich-db-credentials"
key = "DB_USERNAME"
}
}
}
POSTGRES_PASSWORD = {
value_from = {
secret_key_ref = {
name = "immich-db-credentials"
key = "DB_PASSWORD"
}
}
}
POSTGRES_POSTGRES_PASSWORD = {
value_from = {
secret_key_ref = {
name = "immich-db-credentials"
key = "DB_PASSWORD"
}
}
}
DB_HOSTNAME = {
value_from = {
secret_key_ref = {
name = "immich-db-credentials"
key = "DB_HOST"
}
}
}
IMMICH_MACHINE_LEARNING_URL = { value = "http://machinelearning-svc:3003" }
REDIS_HOSTNAME = { value = "immicht-redis-svc" }
UPLOAD_LOCATION = { value = "/tmp" }
POSTGRESQL_ENABLE_LDAP = { value = "no" }
POSTGRESQL_ENABLE_TLS = { value = "no" }
POSTGRESQL_LOG_HOSTNAME = { value = "false" }
POSTGRESQL_LOG_CONNECTIONS = { value = "false" }
POSTGRESQL_LOG_DISCONNECTIONS = { value = "false" }
POSTGRESQL_PGAUDIT_LOG_CATALOG = { value = "off" }
POSTGRESQL_CLIENT_MIN_MESSAGES = { value = "error" }
POSTGRESQL_SHARED_PRELOAD_LIBRARIES = { value = "pgaudit" }
POSTGRES_INITDB_ARGS = { value = "--data-checksums" }
BITNAMI_DEBUG = { value = "false" }
REDIS_REPLICATION_MODE = { value = "master" }
ALLOW_EMPTY_PASSWORD = { value = "yes" }
REDIS_TLS_ENABLED = { value = "no" }
REDIS_PORT = { value = "6379" }
}
pvc = {
immich-data = {
pvc = true
name = "immich-data"
pvc_size = "2Mi"
mount_path = "/usr/src/app/upload"
}
}
}
machinelearning = {
enabled = false
#replicas = 0
connected_namespace = "immicht"
image = "ghcr.io/immich-app/immich-machine-learning:v1.134.0"
service_port = [3003]
environment = {
DB_DATABASE_NAME = {
value_from = {
secret_key_ref = {
name = "immich-db-credentials"
key = "DB_DATABASE_NAME"
}
}
}
DB_USERNAME = {
value_from = {
secret_key_ref = {
name = "immich-db-credentials"
key = "DB_USERNAME"
}
}
}
DB_PASSWORD = {
value_from = {
secret_key_ref = {
name = "immich-db-credentials"
key = "DB_PASSWORD"
}
}
}
DB_HOSTNAME = {
value_from = {
secret_key_ref = {
name = "immich-db-credentials"
key = "DB_HOST"
}
}
}
IMMICH_MACHINE_LEARNING_URL = {
value = "http://machinelearning-svc:3003"
}
REDIS_HOSTNAME = {
value = "immicht-redis-svc"
}
TRANSFORMERS_CACHE = {
value = "/cache"
}
}
}
django = {
#enabled =false
namespace = "django"
image = "gitea.tryton.geeraert.eu/pi-ux-ce/django-python:latest"
service_port = [8000]
database = {
image = "docker.io/tensorchord/pgvecto-rs:pg14-v0.2.0"
}
requirements = {
limits-cpu = "800m"
limits-memory = "800Mi"
requests-cpu = "10m"
requests-memory = "300Mi"
}
extra_manifest = ["/opt/kubernetes/Terraform_kube/external_manifests/django/kubeconfig.secret.yaml", "/opt/kubernetes/Terraform_kube/external_manifests/django/django-db.secret.yaml"]
environment = {
DB_PASSWORD = {
value_from = {
secret_key_ref = {
name = "django-db-credentials"
key = "DB_PASSWORD"
}
}
}
POSTGRES_DB = {
value_from = {
secret_key_ref = {
name = "django-db-credentials"
key = "DB_DATABASE_NAME"
}
}
}
POSTGRES_USER = {
value_from = {
secret_key_ref = {
name = "django-db-credentials"
key = "DB_USERNAME"
}
}
}
POSTGRES_PASSWORD = {
value_from = {
secret_key_ref = {
name = "django-db-credentials"
key = "DB_PASSWORD"
}
}
}
DB_HOSTNAME = {
value_from = {
secret_key_ref = {
name = "django-db-credentials"
key = "DB_HOST"
}
}
}
}
pvc = {
kubeconfig-secret = {
secret = true
name = "kubeconfig-secret"
mount_path = "/kubeconfig"
}
}
}
}