UNPKG

punchmole

Version:

A simple reverse proxy tunnel service which is easy deployable and can be easily customised and used with nodejs code

182 lines (180 loc) 5.41 kB
--- apiVersion: v1 kind: Secret metadata: name: punchmole-configuration namespace: ${ENVIRONMENT} type: Opaque stringData: API_KEYS: "${PUNCHMOLE_API_KEYS}" --- # pod for cronjob apple-crawl-active-keywords apiVersion: apps/v1 kind: Deployment metadata: name: punchmole-server namespace: ${ENVIRONMENT} spec: selector: matchLabels: app: punchmole-server replicas: 1 template: metadata: labels: app: punchmole-server spec: imagePullSecrets: - name: gitlab-registry-credentials containers: - name: punchmole-server image: ${CI_REGISTRY_FULL_IMAGE} resources: requests: memory: 1G env: - name: API_KEYS valueFrom: secretKeyRef: name: punchmole-configuration key: API_KEYS - name: PORT value: "10000" --- # service for keywords rest service kind: Service apiVersion: v1 metadata: name: punchmole-server namespace: ${ENVIRONMENT} spec: selector: app: punchmole-server ports: - port: 10000 # Default port for image targetPort: 10000 --- # ingress for keywords rest service apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: punchmole-server namespace: ${ENVIRONMENT} annotations: nginx.ingress.kubernetes.io/proxy-send-timeout: "360s" nginx.ingress.kubernetes.io/proxy-read-timeout: "360s" nginx.ingress.kubernetes.io/use-forwarded-headers: "true" # Ensure forwarded headers are used nginx.ingress.kubernetes.io/force-ssl-redirect: "false" # Disable forced HTTPS redirection nginx.ingress.kubernetes.io/ssl-passthrough: "true" # Enable SSL passthrough spec: rules: - host: "*.${PUNCHMOLE_DOMAIN}" http: paths: - path: / pathType: Prefix backend: service: name: punchmole-server port: number: 10000 --- # ingress for keywords rest service apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: punchmole-server-secondary-domain namespace: ${ENVIRONMENT} annotations: nginx.ingress.kubernetes.io/proxy-send-timeout: "360s" nginx.ingress.kubernetes.io/proxy-read-timeout: "360s" nginx.ingress.kubernetes.io/use-forwarded-headers: "true" # Ensure forwarded headers are used nginx.ingress.kubernetes.io/force-ssl-redirect: "false" # Disable forced HTTPS redirection nginx.ingress.kubernetes.io/ssl-passthrough: "true" # Enable SSL passthrough spec: rules: - host: "*.${PUNCHMOLE_SECONDARY_DOMAIN}" http: paths: - path: / pathType: Prefix backend: service: name: punchmole-server port: number: 10000 --- # ingress for keywords rest service apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: punchmole-server-third-domain namespace: ${ENVIRONMENT} annotations: nginx.ingress.kubernetes.io/proxy-send-timeout: "360s" nginx.ingress.kubernetes.io/proxy-read-timeout: "360s" nginx.ingress.kubernetes.io/use-forwarded-headers: "true" # Ensure forwarded headers are used nginx.ingress.kubernetes.io/force-ssl-redirect: "false" # Disable forced HTTPS redirection nginx.ingress.kubernetes.io/ssl-passthrough: "true" # Enable SSL passthrough spec: rules: - host: "*.${PUNCHMOLE_THIRD_DOMAIN}" http: paths: - path: / pathType: Prefix backend: service: name: punchmole-server port: number: 10000 --- # ingress for keywords rest service apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: punchmole-server-third-domain namespace: ${ENVIRONMENT} annotations: nginx.ingress.kubernetes.io/proxy-send-timeout: "360s" nginx.ingress.kubernetes.io/proxy-read-timeout: "360s" nginx.ingress.kubernetes.io/use-forwarded-headers: "true" # Ensure forwarded headers are used nginx.ingress.kubernetes.io/force-ssl-redirect: "false" # Disable forced HTTPS redirection nginx.ingress.kubernetes.io/ssl-passthrough: "true" # Enable SSL passthrough spec: rules: - host: "*.${PUNCHMOLE_FOURTH_DOMAIN}" http: paths: - path: / pathType: Prefix backend: service: name: punchmole-server port: number: 10000 --- # ingress for keywords rest service apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: punchmole-server-third-domain namespace: ${ENVIRONMENT} annotations: nginx.ingress.kubernetes.io/proxy-send-timeout: "360s" nginx.ingress.kubernetes.io/proxy-read-timeout: "360s" nginx.ingress.kubernetes.io/use-forwarded-headers: "true" # Ensure forwarded headers are used nginx.ingress.kubernetes.io/force-ssl-redirect: "false" # Disable forced HTTPS redirection nginx.ingress.kubernetes.io/ssl-passthrough: "true" # Enable SSL passthrough spec: rules: - host: "*.${PUNCHMOLE_FIFTH_DOMAIN}" http: paths: - path: / pathType: Prefix backend: service: name: punchmole-server port: number: 10000