json-server (helm-charts)

Chart.yaml
apiVersion: v2
name: jason-server
description: api-gateway
type: application
version: 0.1.0
values.yaml
#DEV values for json-server
#Deployment.yaml
web:
image: clue/json-server
tag: latest
#ingress.yaml
ingress:
annotations:
kubernetes.io/ingress.class: nginx
nginx.ingress.kubernetes.io/proxy-body-size: 0m
nginx.ingress.kubernetes.io/ssl-redirect: "false"
nginx.ingress.kubernetes.io/proxy-connect-timeout: "300"
nginx.ingress.kubernetes.io/proxy-read-timeout: "300"
nginx.ingress.kubernetes.io/proxy-request-buffering: "off"
nginx.ingress.kubernetes.io/proxy-send-timeout: "300"
rules:
host: yourdomain.com
tls:
secretName: yourdomain-sec
deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: json-server-test
labels:
app: json-server-test
spec:
replicas: 1
selector:
matchLabels:
app: json-server-test
template:
metadata:
labels:
app: json-server-test
spec:
nodeSelector:
JasonServer: in
containers:
- name: json-server-test
image: {{ .Values.web.image }}:{{ .Values.web.tag }}
imagePullPolicy: Always
ports:
- containerPort: 80
volumeMounts:
- name: json-server-test-volume
mountPath: /data
volumes:
- name: json-server-test-volume
configMap:
name: json-server-test-config
service.yaml
apiVersion: v1
kind: Service
metadata:
name: json-server-test
labels:
app: json-server-test
spec:
selector:
app: json-server-test
ports:
- name: json-server-test
protocol: TCP
port: 80
targetPort: 80
* configMap.yaml
>apiVersion: v1
kind: ConfigMap
metadata:
name: json-server-test-config
labels:
configmap: json-server-test-config
data:
db.json: |
{
"posts": [
{ "id": 1, "body": "foo" },
{ "id": 2, "body": "bar" }
],
"comments": [
{ "id": 1, "body": "baz", "postId": 1 },
{ "id": 2, "body": "qux", "postId": 2 }
]
}
ingress.yaml
apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
name: json-server-test-ingress
annotations:
{{ toYaml $.Values.ingress.annotations | indent 4 }}
spec:
rules:
- host: {{ .Values.rules.host }}
http:
paths:
- backend:
serviceName: json-server-test
servicePort: 80
tls:
- hosts:
- {{ .Values.rules.host }}
secretName: {{ .Values.tls.secretName }}
db.json
{
"posts": [
{ "id": 1, "body": "foo" },
{ "id": 2, "body": "bar" }
],
"comments": [
{ "id": 1, "body": "baz", "postId": 1 },
{ "id": 2, "body": "qux", "postId": 2 }
]
}