2023-12-07 09:26:46 -05:00
|
|
|
additionalContainers:
|
|
|
|
frontend:
|
|
|
|
image: "{{ .Values.frontendImage.repository }}:{{ .Values.frontendImage.tag }}"
|
|
|
|
name: frontend
|
|
|
|
proxy:
|
|
|
|
image: "{{ .Values.proxyImage.repository }}:{{ .Values.proxyImage.tag }}"
|
|
|
|
name: proxy
|
|
|
|
ports:
|
|
|
|
- containerPort: 80
|
|
|
|
name: main
|
|
|
|
volumeMounts:
|
|
|
|
- mountPath: /etc/nginx/nginx.conf
|
|
|
|
name: librephotos-config
|
|
|
|
readOnly: true
|
|
|
|
subPath: nginx-config
|
|
|
|
- mountPath: /data
|
|
|
|
name: media
|
|
|
|
- mountPath: /protected_media
|
|
|
|
name: protected-media
|
2022-06-07 13:41:19 -04:00
|
|
|
configmap:
|
|
|
|
config:
|
|
|
|
data:
|
|
|
|
nginx-config: |-
|
|
|
|
user nginx;
|
|
|
|
worker_processes 1;
|
|
|
|
|
|
|
|
error_log /var/log/nginx/error.log debug;
|
|
|
|
|
|
|
|
events {
|
|
|
|
worker_connections 1024;
|
|
|
|
}
|
|
|
|
|
|
|
|
http {
|
|
|
|
server {
|
|
|
|
listen 80;
|
|
|
|
location / {
|
|
|
|
# React routes are entirely on the App side in the web broswer
|
|
|
|
# Always proxy to root with the same page request when nginx 404s
|
|
|
|
error_page 404 /;
|
|
|
|
proxy_intercept_errors on;
|
|
|
|
proxy_set_header Host $host;
|
|
|
|
proxy_pass http://localhost:3000/;
|
|
|
|
}
|
|
|
|
location ~ ^/(api|media)/ {
|
|
|
|
proxy_set_header X-Forwarded-Proto $scheme;
|
|
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
|
|
proxy_set_header Host localhost;
|
|
|
|
include uwsgi_params;
|
|
|
|
proxy_pass http://localhost:8001;
|
|
|
|
}
|
|
|
|
# Django media
|
|
|
|
location /protected_media {
|
|
|
|
internal;
|
|
|
|
alias /protected_media/;
|
|
|
|
}
|
|
|
|
|
|
|
|
location /static/drf-yasg {
|
|
|
|
proxy_pass http://localhost:8001;
|
|
|
|
}
|
|
|
|
|
|
|
|
location /data {
|
|
|
|
internal;
|
|
|
|
alias /data/;
|
|
|
|
}
|
|
|
|
|
|
|
|
# Original Photos
|
|
|
|
location /original {
|
|
|
|
internal;
|
|
|
|
alias /data/;
|
|
|
|
}
|
|
|
|
# Nextcloud Original Photos
|
|
|
|
location /nextcloud_original {
|
|
|
|
internal;
|
|
|
|
alias /data/nextcloud_media/;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
2022-02-13 08:07:36 -05:00
|
|
|
enabled: true
|
2023-12-07 09:26:46 -05:00
|
|
|
frontendImage:
|
|
|
|
repository: reallibrephotos/librephotos-frontend
|
2024-01-14 17:57:54 -05:00
|
|
|
tag: latest@sha256:4a70c0192e6576a0ef1e088324c88b0ca221cddbe0a7ea0954496e985776b0a8
|
2023-12-07 09:26:46 -05:00
|
|
|
image:
|
|
|
|
pullPolicy: IfNotPresent
|
|
|
|
repository: reallibrephotos/librephotos
|
2024-01-14 17:57:54 -05:00
|
|
|
tag: latest@sha256:468b066ae5e15fc915ef8a7abc5479496967b9f9d8c51a3c177767a8e831fcd2
|
2023-12-07 09:26:46 -05:00
|
|
|
persistence:
|
2022-02-13 08:07:36 -05:00
|
|
|
cache:
|
|
|
|
enabled: true
|
2023-12-07 09:26:46 -05:00
|
|
|
mountPath: /root/.cache
|
2022-06-07 13:41:19 -04:00
|
|
|
librephotos-config:
|
|
|
|
enabled: "true"
|
2023-12-07 09:26:46 -05:00
|
|
|
mountPath: /etc/nginx/nginx.conf
|
|
|
|
subPath: nginx-config
|
|
|
|
type: custom
|
2022-06-07 13:41:19 -04:00
|
|
|
volumeSpec:
|
|
|
|
configMap:
|
|
|
|
name: '{{ printf "%v-config" (include "tc.common.names.fullname" .) }}'
|
2023-12-07 09:26:46 -05:00
|
|
|
logs:
|
|
|
|
enabled: true
|
|
|
|
mountPath: /logs
|
|
|
|
media:
|
|
|
|
enabled: true
|
|
|
|
mountPath: /data
|
|
|
|
protected-media:
|
|
|
|
enabled: true
|
|
|
|
mountPath: /protected_media
|
2022-08-08 17:25:02 -04:00
|
|
|
portal:
|
2023-12-12 10:54:42 -05:00
|
|
|
open:
|
|
|
|
enabled: true
|
2023-12-07 09:26:46 -05:00
|
|
|
postgresql:
|
|
|
|
enabled: true
|
|
|
|
existingSecret: dbcreds
|
|
|
|
postgresqlDatabase: librephotos
|
|
|
|
postgresqlUsername: librephotos
|
|
|
|
proxyImage:
|
|
|
|
repository: reallibrephotos/librephotos-proxy
|
2024-01-14 17:57:54 -05:00
|
|
|
tag: latest@sha256:5135f612865d2f91178aeeae40c3bf7220d541b5c879b9e8e3d6ab858e67ff3a
|
2023-12-07 09:26:46 -05:00
|
|
|
redis:
|
|
|
|
enabled: true
|
|
|
|
existingSecret: rediscreds
|
|
|
|
redisUsername: default
|
|
|
|
secretEnv:
|
|
|
|
ADMIN_EMAIL: admin@mydomain.com
|
|
|
|
ADMIN_PASSWORD: password
|
|
|
|
ADMIN_USERNAME: admin
|
|
|
|
MAPBOX_API_KEY: ""
|
|
|
|
securityContext:
|
|
|
|
container:
|
|
|
|
readOnlyRootFilesystem: false
|
|
|
|
runAsGroup: 0
|
|
|
|
runAsNonRoot: false
|
|
|
|
runAsUser: 0
|
|
|
|
service:
|
|
|
|
main:
|
|
|
|
ports:
|
|
|
|
main:
|
|
|
|
port: 10161
|
|
|
|
targetPort: 80
|
|
|
|
workload:
|
|
|
|
main:
|
|
|
|
podSpec:
|
|
|
|
containers:
|
|
|
|
main:
|
|
|
|
env:
|
|
|
|
BACKEND_HOST: localhost
|
|
|
|
DB_BACKEND: postgresql
|
|
|
|
DB_HOST:
|
|
|
|
secretKeyRef:
|
|
|
|
key: plainhost
|
|
|
|
name: dbcreds
|
|
|
|
DB_NAME: "{{ .Values.postgresql.postgresqlDatabase }}"
|
|
|
|
DB_PASS:
|
|
|
|
secretKeyRef:
|
|
|
|
key: postgresql-password
|
|
|
|
name: dbcreds
|
|
|
|
DB_PORT: "5432"
|
|
|
|
DB_USER: "{{ .Values.postgresql.postgresqlUsername }}"
|
|
|
|
DEBUG: false
|
|
|
|
HEAVYWEIGHT_PROCESS: 1
|
|
|
|
REDIS_HOST:
|
|
|
|
secretKeyRef:
|
|
|
|
key: plainhost
|
|
|
|
name: rediscreds
|
|
|
|
REDIS_PASS:
|
|
|
|
secretKeyRef:
|
|
|
|
key: redis-password
|
|
|
|
name: rediscreds
|
|
|
|
REDIS_PORT: "6379"
|
|
|
|
SECRET_KEY:
|
|
|
|
secretKeyRef:
|
|
|
|
key: SECRET_KEY
|
|
|
|
name: librephotos-secrets
|
|
|
|
SKIP_PATTERNS: ""
|
|
|
|
WEB_CONCURRENCY: 2
|
|
|
|
probes:
|
|
|
|
liveness:
|
|
|
|
path: /login
|
|
|
|
readiness:
|
|
|
|
path: /login
|
|
|
|
startup:
|
|
|
|
path: /login
|