Skip to content

Instantly share code, notes, and snippets.

@joejulian
Created September 2, 2017 00:31
Show Gist options
  • Save joejulian/d5ed8c054804f1d35bcf86b312bbd0f0 to your computer and use it in GitHub Desktop.
Save joejulian/d5ed8c054804f1d35bcf86b312bbd0f0 to your computer and use it in GitHub Desktop.
---
apiVersion: v1
kind: ServiceAccount
metadata:
name: traefik-ingress-controller
namespace: kube-system
---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: traefik
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 10Mi
---
apiVersion: v1
kind: Deployment
apiVersion: extensions/v1beta1
metadata:
name: traefik-ingress-controller
namespace: kube-system
labels:
k8s-app: traefik-ingress-lb
spec:
replicas: 1
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: 15
# hostNetwork: true
volumes:
- name: traefik-cache
persistentVolumeClaim:
claimName: traefik
- name: traefik-config
configMap:
name: traefik-https-cfg
containers:
- image: traefik
name: traefik-ingress-controller
resources:
limits:
cpu: 1500m
memory: 30Mi
requests:
cpu: 100m
memory: 20Mi
volumeMounts:
- mountPath: /etc/traefik
name: traefik-cache
- mountPath: /config-files
name: traefik-config
args:
- --web
- --kubernetes
- --logLevel=INFO
- --configFile=/config-files/traefik.toml
---
kind: Service
apiVersion: v1
metadata:
name: traefik-ingress-service
spec:
selector:
k8s-app: traefik-ingress-lb
ports:
- name: web
protocol: TCP
port: 80
- name: https
protocol: TCP
port: 443
- name: admin
protocol: TCP
port: 8080
type: NodePort
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment