Compare commits
3 Commits
4ebe0bde06
...
bbc369afb4
Author | SHA1 | Date | |
---|---|---|---|
bbc369afb4 | |||
422ee13940 | |||
a7e0b2a913 |
69
manifests/feed-fetcher.yaml
Normal file
69
manifests/feed-fetcher.yaml
Normal file
@ -0,0 +1,69 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Namespace
|
||||||
|
metadata:
|
||||||
|
name: feed-fetcher
|
||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: feed-fetcher
|
||||||
|
namespace: feed-fetcher
|
||||||
|
spec:
|
||||||
|
type: ClusterIP
|
||||||
|
ports:
|
||||||
|
- port: 80
|
||||||
|
targetPort: web
|
||||||
|
name: web
|
||||||
|
selector:
|
||||||
|
app: feed-fetcher
|
||||||
|
---
|
||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: feed-fetcher
|
||||||
|
namespace: feed-fetcher
|
||||||
|
spec:
|
||||||
|
replicas: 2
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: feed-fetcher
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: feed-fetcher
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- name: web
|
||||||
|
image: docker.cluster.fun/averagemarcus/feed-fetcher:latest
|
||||||
|
imagePullPolicy: Always
|
||||||
|
ports:
|
||||||
|
- containerPort: 8080
|
||||||
|
name: web
|
||||||
|
---
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: Ingress
|
||||||
|
metadata:
|
||||||
|
name: feed-fetcher
|
||||||
|
namespace: feed-fetcher
|
||||||
|
annotations:
|
||||||
|
cert-manager.io/cluster-issuer: letsencrypt
|
||||||
|
traefik.ingress.kubernetes.io/frontend-entry-points: http,https
|
||||||
|
traefik.ingress.kubernetes.io/redirect-entry-point: https
|
||||||
|
traefik.ingress.kubernetes.io/redirect-permanent: "true"
|
||||||
|
spec:
|
||||||
|
tls:
|
||||||
|
- hosts:
|
||||||
|
- feed-fetcher.cluster.fun
|
||||||
|
secretName: feed-fetcher-ingress
|
||||||
|
rules:
|
||||||
|
- host: feed-fetcher.cluster.fun
|
||||||
|
http:
|
||||||
|
paths:
|
||||||
|
- path: /
|
||||||
|
pathType: ImplementationSpecific
|
||||||
|
backend:
|
||||||
|
service:
|
||||||
|
name: feed-fetcher
|
||||||
|
port:
|
||||||
|
number: 80
|
||||||
|
|
@ -1,163 +0,0 @@
|
|||||||
apiVersion: v1
|
|
||||||
kind: Namespace
|
|
||||||
metadata:
|
|
||||||
name: photoprism
|
|
||||||
---
|
|
||||||
|
|
||||||
kind: PersistentVolumeClaim
|
|
||||||
apiVersion: v1
|
|
||||||
metadata:
|
|
||||||
name: photoprism-storage
|
|
||||||
namespace: photoprism
|
|
||||||
spec:
|
|
||||||
accessModes:
|
|
||||||
- ReadWriteOnce
|
|
||||||
resources:
|
|
||||||
requests:
|
|
||||||
storage: 20Gi
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
apiVersion: helm.fluxcd.io/v1
|
|
||||||
kind: HelmRelease
|
|
||||||
metadata:
|
|
||||||
name: photoprism
|
|
||||||
namespace: photoprism
|
|
||||||
spec:
|
|
||||||
chart:
|
|
||||||
repository: https://p80n.github.io/photoprism-helm/
|
|
||||||
name: photoprism
|
|
||||||
version: 1.0.0
|
|
||||||
maxHistory: 5
|
|
||||||
values:
|
|
||||||
image:
|
|
||||||
tag: "20200729"
|
|
||||||
config:
|
|
||||||
PHOTOPRISM_DEBUG: false
|
|
||||||
PHOTOPRISM_PUBLIC: true
|
|
||||||
PHOTOPRISM_READONLY: true
|
|
||||||
PHOTOPRISM_SITE_URL: https://photos.cluster.fun
|
|
||||||
PHOTOPRISM_SITE_TITLE: Photos
|
|
||||||
PHOTOPRISM_SITE_CAPTION: ""
|
|
||||||
persistence:
|
|
||||||
enabled: true
|
|
||||||
cachePath: /data/cache
|
|
||||||
originalsPath: /data/originals
|
|
||||||
storagePath: /data/storage
|
|
||||||
volumeMounts:
|
|
||||||
- name: storage
|
|
||||||
mountPath: /data
|
|
||||||
volumes:
|
|
||||||
- name: storage
|
|
||||||
persistentVolumeClaim:
|
|
||||||
claimName: photoprism-storage
|
|
||||||
resources:
|
|
||||||
requests:
|
|
||||||
memory: 500Mi
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
apiVersion: apps/v1
|
|
||||||
kind: Deployment
|
|
||||||
metadata:
|
|
||||||
name: photoprism-auth
|
|
||||||
namespace: photoprism
|
|
||||||
labels:
|
|
||||||
app: photoprism-auth
|
|
||||||
spec:
|
|
||||||
replicas: 1
|
|
||||||
selector:
|
|
||||||
matchLabels:
|
|
||||||
app: photoprism-auth
|
|
||||||
template:
|
|
||||||
metadata:
|
|
||||||
labels:
|
|
||||||
app: photoprism-auth
|
|
||||||
spec:
|
|
||||||
containers:
|
|
||||||
- args:
|
|
||||||
- --cookie-secure=false
|
|
||||||
- --provider=oidc
|
|
||||||
- --provider-display-name=Auth0
|
|
||||||
- --upstream=http://photoprism-photoprism.photoprism.svc.cluster.local
|
|
||||||
- --http-address=$(HOST_IP):8080
|
|
||||||
- --redirect-url=https://photos.cluster.fun/oauth2/callback
|
|
||||||
- --email-domain=marcusnoble.co.uk
|
|
||||||
- --pass-basic-auth=false
|
|
||||||
- --pass-access-token=false
|
|
||||||
- --oidc-issuer-url=https://marcusnoble.eu.auth0.com/
|
|
||||||
- --cookie-secret=KDGD6rrK6cBmryyZ4wcJ9xAUNW9AQN
|
|
||||||
env:
|
|
||||||
- name: HOST_IP
|
|
||||||
valueFrom:
|
|
||||||
fieldRef:
|
|
||||||
apiVersion: v1
|
|
||||||
fieldPath: status.podIP
|
|
||||||
- name: OAUTH2_PROXY_CLIENT_ID
|
|
||||||
valueFrom:
|
|
||||||
secretKeyRef:
|
|
||||||
key: username
|
|
||||||
name: photoprism-auth
|
|
||||||
- name: OAUTH2_PROXY_CLIENT_SECRET
|
|
||||||
valueFrom:
|
|
||||||
secretKeyRef:
|
|
||||||
key: password
|
|
||||||
name: photoprism-auth
|
|
||||||
image: quay.io/oauth2-proxy/oauth2-proxy:v5.1.1
|
|
||||||
name: oauth-proxy
|
|
||||||
ports:
|
|
||||||
- containerPort: 8080
|
|
||||||
protocol: TCP
|
|
||||||
---
|
|
||||||
apiVersion: v1
|
|
||||||
kind: Secret
|
|
||||||
metadata:
|
|
||||||
name: photoprism-auth
|
|
||||||
namespace: photoprism
|
|
||||||
annotations:
|
|
||||||
kube-1password: mr6spkkx7n3memkbute6ojaarm
|
|
||||||
kube-1password/vault: Kubernetes
|
|
||||||
type: Opaque
|
|
||||||
---
|
|
||||||
apiVersion: v1
|
|
||||||
kind: Service
|
|
||||||
metadata:
|
|
||||||
name: photoprism-auth
|
|
||||||
namespace: photoprism
|
|
||||||
labels:
|
|
||||||
app: photoprism-auth
|
|
||||||
spec:
|
|
||||||
ports:
|
|
||||||
- name: http
|
|
||||||
port: 80
|
|
||||||
protocol: TCP
|
|
||||||
targetPort: 8080
|
|
||||||
selector:
|
|
||||||
app: photoprism-auth
|
|
||||||
type: ClusterIP
|
|
||||||
---
|
|
||||||
apiVersion: extensions/v1beta1
|
|
||||||
kind: Ingress
|
|
||||||
metadata:
|
|
||||||
name: photoprism-auth
|
|
||||||
namespace: photoprism
|
|
||||||
labels:
|
|
||||||
app: photoprism-auth
|
|
||||||
annotations:
|
|
||||||
cert-manager.io/cluster-issuer: letsencrypt
|
|
||||||
traefik.ingress.kubernetes.io/frontend-entry-points: http,https
|
|
||||||
traefik.ingress.kubernetes.io/redirect-entry-point: https
|
|
||||||
traefik.ingress.kubernetes.io/redirect-permanent: "true"
|
|
||||||
spec:
|
|
||||||
tls:
|
|
||||||
- hosts:
|
|
||||||
- photos.cluster.fun
|
|
||||||
secretName: photoprism-ingress
|
|
||||||
rules:
|
|
||||||
- host: photos.cluster.fun
|
|
||||||
http:
|
|
||||||
paths:
|
|
||||||
- path: /
|
|
||||||
backend:
|
|
||||||
serviceName: photoprism-auth
|
|
||||||
servicePort: 80
|
|
@ -111,3 +111,28 @@ spec:
|
|||||||
backend:
|
backend:
|
||||||
serviceName: twitter-profile-pic
|
serviceName: twitter-profile-pic
|
||||||
servicePort: 80
|
servicePort: 80
|
||||||
|
|
||||||
|
---
|
||||||
|
apiVersion: extensions/v1beta1
|
||||||
|
kind: Ingress
|
||||||
|
metadata:
|
||||||
|
name: twitter-profile-pic-cluster-fun
|
||||||
|
namespace: twitter-profile-pic
|
||||||
|
annotations:
|
||||||
|
cert-manager.io/cluster-issuer: letsencrypt
|
||||||
|
traefik.ingress.kubernetes.io/frontend-entry-points: http,https
|
||||||
|
traefik.ingress.kubernetes.io/redirect-entry-point: https
|
||||||
|
traefik.ingress.kubernetes.io/redirect-permanent: "true"
|
||||||
|
spec:
|
||||||
|
tls:
|
||||||
|
- hosts:
|
||||||
|
- twitter-profile-pic.cluster.fun
|
||||||
|
secretName: twitter-profile-pic-cluster-fun-ingress
|
||||||
|
rules:
|
||||||
|
- host: twitter-profile-pic.cluster.fun
|
||||||
|
http:
|
||||||
|
paths:
|
||||||
|
- path: /
|
||||||
|
backend:
|
||||||
|
serviceName: twitter-profile-pic
|
||||||
|
servicePort: 80
|
||||||
|
Loading…
Reference in New Issue
Block a user