소스 검색

HUE-8888 [k8s] Adding gethue.com website

Romain 6 년 전
부모
커밋
2869507272

+ 5 - 2
tools/kubernetes/helm/website/templates/NOTES.txt

@@ -15,13 +15,16 @@ Run below commands to get the recommended URLs:
 
 {{ else if and .Values.ingress.create (eq .Values.ingress.type "nginx-ssl") }}
 
+  echo https://{{ .Values.website.domain }}
   echo https://{{ .Values.docs.domain }}
 
 {{ else }}
 
-  export WEB_PORT=$(kubectl get service gethue-docs -o jsonpath="{.spec.ports[*].nodePort}" --namespace {{ .Release.Namespace }})
+  export WEBSITE_PORT=$(kubectl get service gethue-website -o jsonpath="{.spec.ports[*].nodePort}" --namespace {{ .Release.Namespace }})
+  export DOCS_PORT=$(kubectl get service gethue-docs -o jsonpath="{.spec.ports[*].nodePort}" --namespace {{ .Release.Namespace }})
 
-  echo http://$WEB_HOST:$WEB_PORT
+  echo http://$WEB_HOST:$WEBSITE_PORT
+  echo http://$WEB_HOST:$DOCS_PORT
 
 {{ end }}
 Happy Querying!

+ 29 - 0
tools/kubernetes/helm/website/templates/deployment-website.gethue.yaml

@@ -0,0 +1,29 @@
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+  name: gethue-website
+  labels:
+    deployment: gethue-website
+spec:
+  selector:
+    matchLabels:
+      pod: gethue-website
+  replicas: 1
+  template:
+    metadata:
+      labels:
+        pod: gethue-website
+    spec:
+      containers:
+      - name: gethue-website
+        image: {{ .Values.image.registry }}/website:{{ .Values.image.tag }}
+        imagePullPolicy: {{ .Values.image.pullPolicy }}
+        ports:
+          - containerPort: 80
+        readinessProbe:
+          httpGet:
+            path: /
+            port: 80
+          initialDelaySeconds: 3
+          periodSeconds: 60
+          failureThreshold: 30

+ 9 - 2
tools/kubernetes/helm/website/templates/ingress-http.yaml

@@ -2,11 +2,11 @@
 apiVersion: networking.k8s.io/v1beta1
 kind: Ingress
 metadata:
-  name: gethue-ingress
+  name: gethue
   annotations:
     kubernetes.io/ingress.class: nginx
     nginx.ingress.kubernetes.io/affinity: "cookie"
-    nginx.ingress.kubernetes.io/session-cookie-name: "hue-website-ingress"
+    nginx.ingress.kubernetes.io/session-cookie-name: "gethue"
     nginx.ingress.kubernetes.io/session-cookie-expires: "172800"
     nginx.ingress.kubernetes.io/session-cookie-max-age: "172800"
 spec:
@@ -18,4 +18,11 @@ spec:
           serviceName: gethue-docs
           servicePort: 80
         path: /
+  - host: {{ .Values.website.domain }}
+    http:
+      paths:
+      - backend:
+          serviceName: gethue-website
+          servicePort: 80
+        path: /
 {{- end -}}

+ 8 - 0
tools/kubernetes/helm/website/templates/ingress-https.yaml

@@ -21,8 +21,16 @@ spec:
           serviceName: gethue-docs
           servicePort: 80
         path: /
+  - host: {{ .Values.website.domain }}
+    http:
+      paths:
+      - backend:
+          serviceName: gethue-website
+          servicePort: 80
+        path: /
   tls:
   - hosts:
     - {{ .Values.docs.domain }}
+    - {{ .Values.website.domain }}
     secretName: letsencrypt-website-prod
 {{- end -}}

+ 14 - 0
tools/kubernetes/helm/website/templates/service-website.gethue.yaml

@@ -0,0 +1,14 @@
+apiVersion: v1
+kind: Service
+metadata:
+  name: gethue-website
+  labels:
+    pod: gethue-website
+spec:
+  selector:
+    pod: gethue-website
+  ports:
+  - name: gethue-website
+    port: 9002
+    targetPort: 80
+  type: NodePort

+ 4 - 0
tools/kubernetes/helm/website/values.yaml

@@ -9,6 +9,10 @@ docs:
   enabled: true
   replicas: 1
   domain: "docs.gethue.com"
+website:
+  enabled: true
+  replicas: 1
+  domain: "gethue.com"
 monitoring:
   enabled: false
 ingress: