* support Minikube
[arvados-k8s.git] / charts / arvados / templates / keep-web-configmap.yaml
diff --git a/charts/arvados/templates/keep-web-configmap.yaml b/charts/arvados/templates/keep-web-configmap.yaml
new file mode 100644 (file)
index 0000000..7fe2437
--- /dev/null
@@ -0,0 +1,45 @@
+# Copyright (C) The Arvados Authors. All rights reserved.
+#
+# SPDX-License-Identifier: Apache-2.0
+
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: arvados-keep-web-https-configmap
+  labels:
+    app: {{ template "arvados.name" . }}
+    chart: {{ template "arvados.chart" . }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+data:
+  nginx.conf: |
+    upstream httpContainer {
+      server                127.0.0.1:29002;
+    }
+
+    server {
+      listen                9002 ssl;
+      server_name           arvados-keep-web-https;
+
+      proxy_connect_timeout 90s;
+      proxy_read_timeout    300s;
+      proxy_set_header      X-Real-IP $remote_addr;
+
+      ssl_certificate       /etc/nginx/ssl.crt;
+      ssl_certificate_key   /etc/nginx/ssl.key;
+
+      # Clients need to be able to upload blocks of data up to 64MiB in size.
+      client_max_body_size  64m;
+
+      # Redirect plain HTTP requests to HTTPS.
+      error_page 497 301 =307 https://$host:$server_port$request_uri;
+
+      location / {
+        proxy_pass          http://httpContainer;
+        proxy_set_header    Upgrade         $http_upgrade;
+        proxy_set_header    Connection      "upgrade";
+        proxy_set_header    Host            $host:$server_port;
+        proxy_set_header    X-Forwarded-For $remote_addr;
+      }
+    }