2026-04-17 20:49:37 -04:00
|
|
|
package root
|
|
|
|
|
|
2026-04-30 19:29:26 -04:00
|
|
|
import (
|
2026-05-01 13:38:11 -04:00
|
|
|
"fmt"
|
|
|
|
|
|
2026-04-30 19:29:26 -04:00
|
|
|
"danicos.dev/daniel/go-kube/pkg/kube"
|
|
|
|
|
)
|
|
|
|
|
|
2026-04-17 20:49:37 -04:00
|
|
|
type Service struct {
|
2026-04-18 12:10:01 -04:00
|
|
|
Name string
|
|
|
|
|
Image string
|
|
|
|
|
Port int32
|
|
|
|
|
SecurityContextID int64
|
2026-04-30 18:05:24 -04:00
|
|
|
Public *Public
|
|
|
|
|
Postgres *Postgres
|
2026-04-17 20:49:37 -04:00
|
|
|
}
|
|
|
|
|
|
2026-04-30 18:05:24 -04:00
|
|
|
type Public struct {
|
|
|
|
|
URL string
|
|
|
|
|
NodePort int32
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
type Postgres struct{}
|
|
|
|
|
|
2026-04-17 20:49:37 -04:00
|
|
|
var Linkding = Service{
|
2026-04-30 18:25:06 -04:00
|
|
|
Name: "linking",
|
2026-04-18 19:02:37 -04:00
|
|
|
Image: "sissbruecker/linkding:1.45.0",
|
2026-04-18 12:10:01 -04:00
|
|
|
Port: 9090,
|
|
|
|
|
SecurityContextID: 33, // www-data user, group and FS ID
|
2026-04-30 18:05:24 -04:00
|
|
|
Public: &Public{
|
|
|
|
|
URL: "https://link.danicos.me",
|
|
|
|
|
NodePort: 30010,
|
|
|
|
|
},
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var Immich = Service{
|
|
|
|
|
Name: "immich",
|
2026-05-05 12:29:30 -04:00
|
|
|
Image: "ghcr.io/immich-app/immich-server:v2.7.5",
|
2026-05-05 12:23:57 -04:00
|
|
|
Port: 2283, // Server Port
|
2026-05-05 14:18:44 -04:00
|
|
|
Public: &Public{
|
|
|
|
|
URL: "https://photos.danicos.me",
|
|
|
|
|
NodePort: 30011,
|
|
|
|
|
},
|
2026-04-17 20:49:37 -04:00
|
|
|
}
|
2026-04-21 13:06:42 -04:00
|
|
|
|
2026-05-07 11:51:35 -04:00
|
|
|
var Glance = Service{
|
|
|
|
|
Name: "glance",
|
2026-05-07 12:17:47 -04:00
|
|
|
Image: "glanceapp/glance:v0.8.4",
|
|
|
|
|
Port: 8080, // Server Port
|
|
|
|
|
Public: &Public{
|
|
|
|
|
URL: "https://home.danicos.me",
|
|
|
|
|
NodePort: 30009,
|
|
|
|
|
},
|
2026-05-07 11:51:35 -04:00
|
|
|
}
|
|
|
|
|
|
2026-04-29 19:15:55 -04:00
|
|
|
var (
|
2026-05-01 13:38:11 -04:00
|
|
|
Longhorn = "longhorn"
|
|
|
|
|
Monitoring = "monitoring"
|
|
|
|
|
CloudNativePG = "cnpg"
|
|
|
|
|
PGClusterNamespace = kube.Namespace(CloudNativePG + "-cluster")
|
|
|
|
|
PG_CLUSTER_HOSTNAME = fmt.Sprintf("%s-rw.%s.svc.cluster.local", PGClusterNamespace.Name, PGClusterNamespace.Name)
|
|
|
|
|
PG_CLUSTER_PORT = 5432
|
2026-04-30 10:41:19 -04:00
|
|
|
)
|
|
|
|
|
|
|
|
|
|
var (
|
|
|
|
|
TrueNAS_CSI = "truenas-csi"
|
|
|
|
|
TrueNASURL = "apex-truenas.orca-uaru.ts.net"
|
2026-05-01 15:19:46 -04:00
|
|
|
TrueNASProvisioner = "csi.truenas.io"
|
2026-04-30 10:41:19 -04:00
|
|
|
TrueNASSTorageClassNFS = "truenas-nfs"
|
|
|
|
|
TrueNASSTorageClass_iSCSI = "truenas-iscsi"
|
2026-04-29 19:15:55 -04:00
|
|
|
)
|