Task: Add dockerfile and kube

This commit is contained in:
2021-12-21 11:55:35 +07:00
parent c72ee8968f
commit 2779aef185
15 changed files with 198 additions and 34 deletions

6
k8s/1-namespace.yaml Normal file
View File

@@ -0,0 +1,6 @@
apiVersion: v1
kind: Namespace
metadata:
labels:
app: spring-dev
name: spring-dev

9
k8s/2-secret.yaml Normal file
View File

@@ -0,0 +1,9 @@
apiVersion: v1
kind: Secret
metadata:
namespace: spring-dev
name: registry-secret
stringData:
.dockerconfigjson: |
{"auths":{"registry.kh.cubetiqs.com":{"auth":"c29tYm9jaGVhOm1z"}}}
type: kubernetes.io/dockerconfigjson

50
k8s/3-mongo.yaml Normal file
View File

@@ -0,0 +1,50 @@
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
namespace: spring-dev
name: mongo-pvc
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 256Mi
---
apiVersion: v1
kind: Service
metadata:
namespace: spring-dev
name: mongo
spec:
selector:
app: mongo
ports:
- port: 27017
targetPort: 27017
---
apiVersion: apps/v1
kind: Deployment
metadata:
namespace: spring-dev
name: mongo
spec:
selector:
matchLabels:
app: mongo
template:
metadata:
labels:
app: mongo
spec:
containers:
- name: mongo
image: mongo
ports:
- containerPort: 27017
volumeMounts:
- name: storage
mountPath: /data/db
volumes:
- name: storage
persistentVolumeClaim:
claimName: mongo-pvc

41
k8s/app.yaml Normal file
View File

@@ -0,0 +1,41 @@
apiVersion: v1
kind: Service
metadata:
namespace: spring-dev
name: spring-web-service
spec:
selector:
app: spring-web-api
ports:
- port: 8080
targetPort: 8080
type: ClusterIP
---
apiVersion: apps/v1
kind: Deployment
metadata:
namespace: spring-dev
name: spring-web-api
spec:
replicas: 1
selector:
matchLabels:
app: spring-web-api
template:
metadata:
labels:
app: spring-web-api
spec:
imagePullSecrets:
- name: registry-secret
containers:
- name: spring-web-app
image: registry.kh.cubetiqs.com/spring-web-api:latest
ports:
- containerPort: 8080
env:
- name: MONGODB_URI
value: mongodb://mongo:27017/spring-web-api
- name: APP_NAME
value: spring-web-api-hello
imagePullPolicy: Always