apiVersion: apps/v1 kind: Deployment metadata: name: pix2tex labels: app: pix2tex spec: replicas: 1 selector: matchLabels: app: pix2tex template: metadata: labels: app: pix2tex spec: containers: - name: pix2tex image: lukasblecher/pix2tex:api tty: true resources: requests: memory: "250M" cpu: 500m ephemeral-storage: "2Gi" limits: ephemeral-storage: "4Gi" memory: "500M" cpu: 1000m ports: - containerPort: 8501 command: ["python", "pix2tex/api/run.py"] nodeSelector: kubernetes.io/arch: amd64 --- apiVersion: v1 kind: Service metadata: name: pix2tex-http namespace: pix2tex labels: app: pix2tex spec: ports: - name: http port: 8501 targetPort: 8501 selector: app: pix2tex --- apiVersion: traefik.containo.us/v1alpha1 kind: IngressRoute metadata: name: pix2tex-ingress spec: entryPoints: - websecure routes: - match: Host(`pix2tex.kluster.moll.re`) kind: Rule middlewares: - name: pix2tex-websocket services: - name: pix2tex-http port: 8501 tls: certResolver: default-tls --- apiVersion: traefik.containo.us/v1alpha1 kind: Middleware metadata: name: pix2tex-websocket spec: headers: customRequestHeaders: X-Forwarded-Proto: "https" # enable websockets Upgrade: "websocket"