imfreedom/k8s-cluster

Add the deployment for lists.imfreedom.org.

17 months ago, Gary Kramlich
22ca0a0280d4
Add the deployment for lists.imfreedom.org.

This is currently running at liststest.imfreedom.org until we are actually ready
to migrate the production stuff.
---
apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:
name: pidgin-history-http
spec:
entryPoints:
- http
routes:
- match: Host(`history.pidgin.im`)
kind: Rule
services:
- name: pidgin-history
port: 80
middlewares:
- name: https-redirect
---
apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:
name: pidgin-history-https
spec:
entryPoints:
- https
routes:
- match: Host(`history.pidgin.im`)
kind: Rule
services:
- name: pidgin-history
port: 80
middlewares:
- name: common-headers
- name: hsts-headers
tls:
secretName: pidgin-history-tls
---
apiVersion: cert-manager.io/v1
kind: Certificate
metadata:
name: pidgin-history-tls
spec:
secretName: pidgin-history-tls
issuerRef:
name: letsencrypt
dnsNames:
- history.pidgin.im
---
apiVersion: v1
kind: Service
metadata:
name: pidgin-history
labels:
app: pidgin-history
spec:
ports:
- port: 80
protocol: TCP
selector:
app: pidgin-history
---
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: pidgin-history
labels:
app: pidgin-history
spec:
podSelector:
matchLabels:
app: pidgin-history
ingress:
- from:
- namespaceSelector:
matchLabels:
name: kube-public
podSelector:
matchLabels:
app: traefik
role: controller
ports:
- port: 80
protocol: TCP
---
apiVersion: policy/v1
kind: PodDisruptionBudget
metadata:
name: pidgin-history
spec:
minAvailable: 1
selector:
matchLabels:
app: pidgin-history
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: pidgin-history
labels:
app: pidgin-history
keel.sh/policy: force
keel.sh/trigger: poll
annotations:
keel.sh/pollSchedule: "@every 5m"
spec:
replicas: 2
revisionHistoryLimit: 0
selector:
matchLabels:
app: pidgin-history
template:
metadata:
labels:
app: pidgin-history
spec:
affinity:
podAntiAffinity:
preferredDuringSchedulingIgnoredDuringExecution:
- podAffinityTerm:
labelSelector:
matchExpressions:
- key: app
operator: In
values:
- pidgin-history
topologyKey: failure-domain.beta.kubernetes.io/region
weight: 100
containers:
- name: pidgin-history
image: docker.io/pidgin/history:latest
imagePullPolicy: Always
ports:
- containerPort: 80
resources:
limits:
cpu: 50m
memory: 96Mi
requests:
cpu: 10m
memory: 64Mi
---