chore(immich): First immich deployment
All checks were successful
Validate K8s manifests / validate-manifests (push) Successful in 2m4s
All checks were successful
Validate K8s manifests / validate-manifests (push) Successful in 2m4s
This commit is contained in:
17
clusters/artemis/apps/immich/app-project.yaml
Normal file
17
clusters/artemis/apps/immich/app-project.yaml
Normal file
@@ -0,0 +1,17 @@
|
||||
---
|
||||
apiVersion: argoproj.io/v1alpha1
|
||||
kind: AppProject
|
||||
metadata:
|
||||
name: immich
|
||||
spec:
|
||||
description: Cloud Media Server
|
||||
sourceRepos:
|
||||
- '*'
|
||||
sourceNamespaces:
|
||||
- '*'
|
||||
destinations:
|
||||
- namespace: 'immich'
|
||||
server: '*'
|
||||
clusterResourceWhitelist:
|
||||
- group: '*'
|
||||
kind: '*'
|
||||
24
clusters/artemis/apps/immich/application.yaml
Normal file
24
clusters/artemis/apps/immich/application.yaml
Normal file
@@ -0,0 +1,24 @@
|
||||
apiVersion: argoproj.io/v1alpha1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: immich
|
||||
namespace: immich
|
||||
labels:
|
||||
platform.dgse.cloud/cluster: artemis
|
||||
finalizers:
|
||||
- resources-finalizer.argocd.argoproj.io
|
||||
spec:
|
||||
project: immich
|
||||
source:
|
||||
repoURL: 'https://git.dgse.cloud/DGSE/kubernetes.git'
|
||||
path: manifests/artemis/immich
|
||||
targetRevision: main
|
||||
destination:
|
||||
namespace: immich
|
||||
name: in-cluster
|
||||
syncPolicy:
|
||||
syncOptions:
|
||||
- CreateNamespace=true
|
||||
automated:
|
||||
prune: true
|
||||
selfHeal: true
|
||||
7
clusters/artemis/apps/immich/kustomization.yaml
Normal file
7
clusters/artemis/apps/immich/kustomization.yaml
Normal file
@@ -0,0 +1,7 @@
|
||||
---
|
||||
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||
kind: Kustomization
|
||||
|
||||
resources:
|
||||
- app-project.yaml
|
||||
- application.yaml
|
||||
@@ -15,3 +15,4 @@ resources:
|
||||
- mailu
|
||||
- ntfy
|
||||
- penpot
|
||||
- immich
|
||||
|
||||
13
manifests/artemis/immich/kustomization.yaml
Normal file
13
manifests/artemis/immich/kustomization.yaml
Normal file
@@ -0,0 +1,13 @@
|
||||
---
|
||||
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||
kind: Kustomization
|
||||
metadata:
|
||||
name: immich
|
||||
|
||||
helmCharts:
|
||||
- name: immich
|
||||
repo: https://immich-app.github.io/immich-charts
|
||||
version: 0.10.1
|
||||
releaseName: immich
|
||||
namespace: immich
|
||||
valuesFile: values.yaml
|
||||
109
manifests/artemis/immich/values.yaml
Normal file
109
manifests/artemis/immich/values.yaml
Normal file
@@ -0,0 +1,109 @@
|
||||
## This chart relies on the common library chart from bjw-s
|
||||
## You can find it at https://github.com/bjw-s-labs/helm-charts/tree/common-4.3.0/charts/library/common
|
||||
## Refer there for more detail about the supported values
|
||||
|
||||
# These entries are shared between all the Immich components
|
||||
|
||||
controllers:
|
||||
main:
|
||||
containers:
|
||||
main:
|
||||
image:
|
||||
tag: v2.0.0
|
||||
env:
|
||||
REDIS_HOSTNAME: '{{ printf "%s-valkey" .Release.Name }}'
|
||||
IMMICH_MACHINE_LEARNING_URL: '{{ printf "http://%s-machine-learning:3003" .Release.Name }}'
|
||||
# Add the env vars to connect to your database here.
|
||||
|
||||
immich:
|
||||
metrics:
|
||||
# Enabling this will create the service monitors needed to monitor immich with the prometheus operator
|
||||
enabled: false
|
||||
persistence:
|
||||
# Main data store for all photos shared between different components.
|
||||
library:
|
||||
# Automatically creating the library volume is not supported by this chart
|
||||
# You have to specify an existing PVC to use
|
||||
existingClaim:
|
||||
# configuration is immich-config.json converted to yaml
|
||||
# ref: https://immich.app/docs/install/config-file/
|
||||
#
|
||||
configuration: {}
|
||||
# trash:
|
||||
# enabled: false
|
||||
# days: 30
|
||||
# storageTemplate:
|
||||
# enabled: true
|
||||
# template: "{{y}}/{{y}}-{{MM}}-{{dd}}/{{filename}}"
|
||||
|
||||
# Dependencies
|
||||
|
||||
valkey:
|
||||
enabled: true
|
||||
controllers:
|
||||
main:
|
||||
containers:
|
||||
main:
|
||||
image:
|
||||
repository: docker.io/valkey/valkey
|
||||
tag: 9.0-alpine@sha256:73f3aa08d95879525aa0dc84ebf6b82b59b898a24e8067a37d6250c31ee2c4d4
|
||||
pullPolicy: IfNotPresent
|
||||
persistence:
|
||||
data:
|
||||
enabled: true
|
||||
size: 1Gi
|
||||
# Optional: Set this to persistentVolumeClaim to keep job queues persistent
|
||||
type: emptyDir
|
||||
accessMode: ReadWriteOnce
|
||||
# storageClass: your-class
|
||||
|
||||
# Immich components
|
||||
|
||||
server:
|
||||
enabled: true
|
||||
controllers:
|
||||
main:
|
||||
containers:
|
||||
main:
|
||||
image:
|
||||
repository: ghcr.io/immich-app/immich-server
|
||||
pullPolicy: IfNotPresent
|
||||
ingress:
|
||||
main:
|
||||
enabled: true
|
||||
className: traefik
|
||||
annotations:
|
||||
# proxy-body-size is set to 0 to remove the body limit on file uploads
|
||||
nginx.ingress.kubernetes.io/proxy-body-size: "0"
|
||||
cert-manager.io/cluster-issuer: letsencrypt
|
||||
hosts:
|
||||
- host: photos.dgse.cloud
|
||||
paths:
|
||||
- path: "/"
|
||||
service:
|
||||
identifier: main
|
||||
tls:
|
||||
- hosts:
|
||||
- photos.dgse.cloud
|
||||
secretName: immich-tls
|
||||
|
||||
machine-learning:
|
||||
enabled: true
|
||||
controllers:
|
||||
main:
|
||||
containers:
|
||||
main:
|
||||
image:
|
||||
repository: ghcr.io/immich-app/immich-machine-learning
|
||||
pullPolicy: IfNotPresent
|
||||
env:
|
||||
TRANSFORMERS_CACHE: /cache
|
||||
persistence:
|
||||
cache:
|
||||
enabled: true
|
||||
size: 10Gi
|
||||
# Optional: Set this to persistentVolumeClaim to avoid downloading the ML models every start.
|
||||
type: emptyDir
|
||||
accessMode: ReadWriteMany
|
||||
# storageClass: your-class
|
||||
|
||||
Reference in New Issue
Block a user