Skip to content

Instantly share code, notes, and snippets.

@carlosedp
Created May 2, 2018 21:12
Show Gist options
  • Save carlosedp/9b832d2def64c47cd2c026e20637de15 to your computer and use it in GitHub Desktop.
Save carlosedp/9b832d2def64c47cd2c026e20637de15 to your computer and use it in GitHub Desktop.
trefik-deployment.yaml
kind: Deployment
apiVersion: extensions/v1beta1
metadata:
name: traefik-ingress-controller
namespace: kube-system
labels:
k8s-app: traefik-ingress-lb
spec:
replicas: 2
selector:
matchLabels:
k8s-app: traefik-ingress-lb
template:
metadata:
labels:
k8s-app: traefik-ingress-lb
name: traefik-ingress-lb
spec:
serviceAccountName: traefik-ingress-controller
terminationGracePeriodSeconds: 60
containers:
- image: traefik
name: traefik-ingress-lb
volumeMounts:
- mountPath: /config
name: config
- mountPath: /etc/traefik
name: certificates
ports:
- name: http
containerPort: 80
- name: https
containerPort: 443
- name: admin
containerPort: 8080
args:
- --api
- --kubernetes
- --configfile=/config/traefik.toml
livenessProbe:
httpGet:
path: /ping
port: 80
initialDelaySeconds: 3
periodSeconds: 3
timeoutSeconds: 1
affinity:
podAntiAffinity:
preferredDuringSchedulingIgnoredDuringExecution:
- weight: 100
podAffinityTerm:
labelSelector:
matchExpressions:
- key: role
operator: In
values:
- data
topologyKey: kubernetes.io/hostname
volumes:
- name: config
configMap:
name: traefik-conf
- name: certificates
persistentVolumeClaim:
claimName: traefik-certificates
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment