|
@@ -1,46 +1,138 @@
|
|
|
apiVersion: v1
|
|
apiVersion: v1
|
|
|
kind: Service
|
|
kind: Service
|
|
|
metadata:
|
|
metadata:
|
|
|
- name: gmusic
|
|
|
|
|
|
|
+ name: gmus
|
|
|
spec:
|
|
spec:
|
|
|
type: LoadBalancer
|
|
type: LoadBalancer
|
|
|
selector:
|
|
selector:
|
|
|
- app: gmusic
|
|
|
|
|
|
|
+ app: gmus
|
|
|
ports:
|
|
ports:
|
|
|
- name: http
|
|
- name: http
|
|
|
protocol: TCP
|
|
protocol: TCP
|
|
|
- port: 8080
|
|
|
|
|
|
|
+ port: 8081
|
|
|
targetPort: 80
|
|
targetPort: 80
|
|
|
---
|
|
---
|
|
|
apiVersion: networking.k8s.io/v1
|
|
apiVersion: networking.k8s.io/v1
|
|
|
kind: Ingress
|
|
kind: Ingress
|
|
|
metadata:
|
|
metadata:
|
|
|
- name: gmusic-ingress
|
|
|
|
|
|
|
+ name: gmus-ingress
|
|
|
annotations:
|
|
annotations:
|
|
|
- nginx.ingress.kubernetes.io/rewrite-target: /
|
|
|
|
|
|
|
+ nginx.ingress.kubernetes.io/rewrite-target: /$2
|
|
|
spec:
|
|
spec:
|
|
|
rules:
|
|
rules:
|
|
|
- http:
|
|
- http:
|
|
|
paths:
|
|
paths:
|
|
|
- - path: /
|
|
|
|
|
|
|
+ - path: /api(/|$)(.*)
|
|
|
pathType: Prefix
|
|
pathType: Prefix
|
|
|
backend:
|
|
backend:
|
|
|
service:
|
|
service:
|
|
|
- name: gmusic
|
|
|
|
|
|
|
+ name: gmus-backend
|
|
|
port:
|
|
port:
|
|
|
number: 80
|
|
number: 80
|
|
|
|
|
+ - path: /(.*)
|
|
|
|
|
+ backend:
|
|
|
|
|
+ service:
|
|
|
|
|
+ name: gmus-web
|
|
|
|
|
+ port:
|
|
|
|
|
+ number: 80
|
|
|
|
|
+---
|
|
|
|
|
+apiVersion: apps/v1
|
|
|
|
|
+kind: Deployment
|
|
|
|
|
+metadata:
|
|
|
|
|
+ name: gmus-backend
|
|
|
|
|
+ labels:
|
|
|
|
|
+ app: gmus-backend
|
|
|
|
|
+spec:
|
|
|
|
|
+ replicas: 2
|
|
|
|
|
+ selector:
|
|
|
|
|
+ matchLabels:
|
|
|
|
|
+ app: gmus-backend
|
|
|
|
|
+ template:
|
|
|
|
|
+ metadata:
|
|
|
|
|
+ labels:
|
|
|
|
|
+ app: gmus-backend
|
|
|
|
|
+ spec:
|
|
|
|
|
+ imagePullSecrets:
|
|
|
|
|
+ - name: regcred
|
|
|
|
|
+ containers:
|
|
|
|
|
+ - name: gmus-backend
|
|
|
|
|
+ image: docker.fela.space/gmus-backend:0
|
|
|
|
|
+ ports:
|
|
|
|
|
+ - containerPort: 80
|
|
|
|
|
+ envFrom:
|
|
|
|
|
+ - configMapRef:
|
|
|
|
|
+ name: gmus-backend
|
|
|
|
|
+ env:
|
|
|
|
|
+ - name: GO_ENV
|
|
|
|
|
+ value: production
|
|
|
|
|
+ - name: POSTGRES_PASSWORD
|
|
|
|
|
+ valueFrom:
|
|
|
|
|
+ secretKeyRef:
|
|
|
|
|
+ name: postgres-pass
|
|
|
|
|
+ key: password
|
|
|
|
|
+ livenessProbe:
|
|
|
|
|
+ initialDelaySeconds: 5
|
|
|
|
|
+ periodSeconds: 5
|
|
|
|
|
+ httpGet:
|
|
|
|
|
+ path: /liveness
|
|
|
|
|
+ port: 80
|
|
|
|
|
+ readinessProbe:
|
|
|
|
|
+ initialDelaySeconds: 5
|
|
|
|
|
+ periodSeconds: 5
|
|
|
|
|
+ httpGet:
|
|
|
|
|
+ path: /readiness
|
|
|
|
|
+ port: 80
|
|
|
|
|
+---
|
|
|
|
|
+apiVersion: apps/v1
|
|
|
|
|
+kind: Deployment
|
|
|
|
|
+metadata:
|
|
|
|
|
+ name: gmus-web
|
|
|
|
|
+ labels:
|
|
|
|
|
+ app: gmus-web
|
|
|
|
|
+spec:
|
|
|
|
|
+ replicas: 1
|
|
|
|
|
+ selector:
|
|
|
|
|
+ matchLabels:
|
|
|
|
|
+ app: gmus-web
|
|
|
|
|
+ template:
|
|
|
|
|
+ metadata:
|
|
|
|
|
+ labels:
|
|
|
|
|
+ app: gmus-web
|
|
|
|
|
+ spec:
|
|
|
|
|
+ imagePullSecrets:
|
|
|
|
|
+ - name: regcred
|
|
|
|
|
+ containers:
|
|
|
|
|
+ - name: gmus-web
|
|
|
|
|
+ image: docker.fela.space/gmus-web:0
|
|
|
|
|
+ ports:
|
|
|
|
|
+ - containerPort: 80
|
|
|
|
|
+ envFrom:
|
|
|
|
|
+ - configMapRef:
|
|
|
|
|
+ name: gmus-web
|
|
|
|
|
+ livenessProbe:
|
|
|
|
|
+ initialDelaySeconds: 5
|
|
|
|
|
+ periodSeconds: 5
|
|
|
|
|
+ httpGet:
|
|
|
|
|
+ path: /liveness
|
|
|
|
|
+ port: 80
|
|
|
|
|
+ readinessProbe:
|
|
|
|
|
+ initialDelaySeconds: 5
|
|
|
|
|
+ periodSeconds: 5
|
|
|
|
|
+ httpGet:
|
|
|
|
|
+ path: /readiness
|
|
|
|
|
+ port: 80
|
|
|
---
|
|
---
|
|
|
apiVersion: v1
|
|
apiVersion: v1
|
|
|
kind: Service
|
|
kind: Service
|
|
|
metadata:
|
|
metadata:
|
|
|
- name: gmusic-database
|
|
|
|
|
|
|
+ name: gmus-database
|
|
|
labels:
|
|
labels:
|
|
|
- app: gmusic-database
|
|
|
|
|
|
|
+ app: gmus-database
|
|
|
spec:
|
|
spec:
|
|
|
ports:
|
|
ports:
|
|
|
- port: 5432
|
|
- port: 5432
|
|
|
selector:
|
|
selector:
|
|
|
- app: gmusic-database
|
|
|
|
|
|
|
+ app: gmus-database
|
|
|
tier: postgres
|
|
tier: postgres
|
|
|
clusterIP: None
|
|
clusterIP: None
|
|
|
---
|
|
---
|
|
@@ -56,7 +148,7 @@ kind: PersistentVolume
|
|
|
metadata:
|
|
metadata:
|
|
|
name: postgres-pv
|
|
name: postgres-pv
|
|
|
labels:
|
|
labels:
|
|
|
- app: gmusic-database
|
|
|
|
|
|
|
+ app: gmus-database
|
|
|
spec:
|
|
spec:
|
|
|
storageClassName: manual
|
|
storageClassName: manual
|
|
|
capacity:
|
|
capacity:
|
|
@@ -64,14 +156,14 @@ spec:
|
|
|
accessModes:
|
|
accessModes:
|
|
|
- ReadWriteOnce
|
|
- ReadWriteOnce
|
|
|
hostPath:
|
|
hostPath:
|
|
|
- path: /var/local/gmusic-database
|
|
|
|
|
|
|
+ path: /var/local/gmus-database
|
|
|
---
|
|
---
|
|
|
apiVersion: v1
|
|
apiVersion: v1
|
|
|
kind: PersistentVolumeClaim
|
|
kind: PersistentVolumeClaim
|
|
|
metadata:
|
|
metadata:
|
|
|
name: postgres-pv-claim
|
|
name: postgres-pv-claim
|
|
|
labels:
|
|
labels:
|
|
|
- app: gmusic-database
|
|
|
|
|
|
|
+ app: gmus-database
|
|
|
spec:
|
|
spec:
|
|
|
storageClassName: manual
|
|
storageClassName: manual
|
|
|
accessModes:
|
|
accessModes:
|
|
@@ -83,20 +175,20 @@ spec:
|
|
|
apiVersion: apps/v1
|
|
apiVersion: apps/v1
|
|
|
kind: Deployment
|
|
kind: Deployment
|
|
|
metadata:
|
|
metadata:
|
|
|
- name: gmusic-database
|
|
|
|
|
|
|
+ name: gmus-database
|
|
|
labels:
|
|
labels:
|
|
|
- app: gmusic-database
|
|
|
|
|
|
|
+ app: gmus-database
|
|
|
spec:
|
|
spec:
|
|
|
selector:
|
|
selector:
|
|
|
matchLabels:
|
|
matchLabels:
|
|
|
- app: gmusic-database
|
|
|
|
|
|
|
+ app: gmus-database
|
|
|
tier: postgres
|
|
tier: postgres
|
|
|
strategy:
|
|
strategy:
|
|
|
type: Recreate
|
|
type: Recreate
|
|
|
template:
|
|
template:
|
|
|
metadata:
|
|
metadata:
|
|
|
labels:
|
|
labels:
|
|
|
- app: gmusic-database
|
|
|
|
|
|
|
+ app: gmus-database
|
|
|
tier: postgres
|
|
tier: postgres
|
|
|
spec:
|
|
spec:
|
|
|
containers:
|
|
containers:
|
|
@@ -104,7 +196,7 @@ spec:
|
|
|
name: postgres
|
|
name: postgres
|
|
|
env:
|
|
env:
|
|
|
- name: POSTGRES_USER
|
|
- name: POSTGRES_USER
|
|
|
- value: gmusic
|
|
|
|
|
|
|
+ value: gmus
|
|
|
- name: POSTGRES_PASSWORD
|
|
- name: POSTGRES_PASSWORD
|
|
|
valueFrom:
|
|
valueFrom:
|
|
|
secretKeyRef:
|
|
secretKeyRef:
|
|
@@ -121,10 +213,50 @@ spec:
|
|
|
persistentVolumeClaim:
|
|
persistentVolumeClaim:
|
|
|
claimName: postgres-pv-claim
|
|
claimName: postgres-pv-claim
|
|
|
---
|
|
---
|
|
|
|
|
+apiVersion: v1
|
|
|
|
|
+kind: Service
|
|
|
|
|
+metadata:
|
|
|
|
|
+ name: gmus-redis
|
|
|
|
|
+ labels:
|
|
|
|
|
+ app: gmus-redis
|
|
|
|
|
+spec:
|
|
|
|
|
+ ports:
|
|
|
|
|
+ - port: 6379
|
|
|
|
|
+ selector:
|
|
|
|
|
+ app: gmus-redis
|
|
|
|
|
+ tier: redis
|
|
|
|
|
+ clusterIP: None
|
|
|
|
|
+---
|
|
|
|
|
+apiVersion: apps/v1
|
|
|
|
|
+kind: Deployment
|
|
|
|
|
+metadata:
|
|
|
|
|
+ name: gmus-redis
|
|
|
|
|
+ labels:
|
|
|
|
|
+ app: gmus-redis
|
|
|
|
|
+spec:
|
|
|
|
|
+ selector:
|
|
|
|
|
+ matchLabels:
|
|
|
|
|
+ app: gmus-redis
|
|
|
|
|
+ tier: redis
|
|
|
|
|
+ strategy:
|
|
|
|
|
+ type: Recreate
|
|
|
|
|
+ template:
|
|
|
|
|
+ metadata:
|
|
|
|
|
+ labels:
|
|
|
|
|
+ app: gmus-redis
|
|
|
|
|
+ tier: redis
|
|
|
|
|
+ spec:
|
|
|
|
|
+ containers:
|
|
|
|
|
+ - image: redis:6-alpine
|
|
|
|
|
+ name: redis
|
|
|
|
|
+ ports:
|
|
|
|
|
+ - containerPort: 6379
|
|
|
|
|
+ name: redis
|
|
|
|
|
+---
|
|
|
apiVersion: batch/v1beta1
|
|
apiVersion: batch/v1beta1
|
|
|
kind: CronJob
|
|
kind: CronJob
|
|
|
metadata:
|
|
metadata:
|
|
|
- name: gmusic-scan-library
|
|
|
|
|
|
|
+ name: gmus-scan-library
|
|
|
spec:
|
|
spec:
|
|
|
schedule: "45 5 * * *"
|
|
schedule: "45 5 * * *"
|
|
|
jobTemplate:
|
|
jobTemplate:
|
|
@@ -132,17 +264,19 @@ spec:
|
|
|
template:
|
|
template:
|
|
|
spec:
|
|
spec:
|
|
|
containers:
|
|
containers:
|
|
|
- - name: gmusic-scan
|
|
|
|
|
- image: docker.fela.space/gmusic:0
|
|
|
|
|
|
|
+ - name: gmus-scan
|
|
|
|
|
+ image: docker.fela.space/gmus-backend:0
|
|
|
args:
|
|
args:
|
|
|
- scan
|
|
- scan
|
|
|
envFrom:
|
|
envFrom:
|
|
|
- configMapRef:
|
|
- configMapRef:
|
|
|
- name: gmusic
|
|
|
|
|
|
|
+ name: gmus-backend
|
|
|
env:
|
|
env:
|
|
|
- - name: DATABASE_URL
|
|
|
|
|
|
|
+ - name: GO_ENV
|
|
|
|
|
+ value: production
|
|
|
|
|
+ - name: POSTGRES_PASSWORD
|
|
|
valueFrom:
|
|
valueFrom:
|
|
|
secretKeyRef:
|
|
secretKeyRef:
|
|
|
name: postgres-pass
|
|
name: postgres-pass
|
|
|
- key: url
|
|
|
|
|
|
|
+ key: password
|
|
|
restartPolicy: Never
|
|
restartPolicy: Never
|