0
|
1 apiVersion: apps/v1
|
|
2 kind: Deployment
|
|
3 metadata:
|
|
4 name: projects
|
|
5 spec:
|
|
6 replicas: 1
|
|
7 selector:
|
|
8 matchLabels:
|
|
9 app: projects
|
|
10 template:
|
|
11 metadata:
|
|
12 labels:
|
|
13 app: projects
|
|
14 annotations:
|
|
15 prometheus.io/scrape: "true"
|
|
16 spec:
|
|
17 volumes:
|
|
18 - { name: my, persistentVolumeClaim: { claimName: my } }
|
|
19 containers:
|
|
20 - name: projects
|
|
21 image: bang5:5000/projects_image
|
|
22 ports:
|
|
23 - containerPort: 80
|
|
24 command:
|
|
25 - nodejs
|
|
26 - server.js
|
|
27 volumeMounts:
|
|
28 - name: my
|
|
29 mountPath: /data
|
|
30 subPath: site/projects
|
|
31
|
|
32 affinity:
|
|
33 nodeAffinity:
|
|
34 requiredDuringSchedulingIgnoredDuringExecution:
|
|
35 nodeSelectorTerms:
|
|
36 - matchExpressions:
|
|
37 - key: "kubernetes.io/hostname"
|
|
38 operator: In
|
|
39 values: ["bang", "dash", "slash"]
|
|
40 ---
|
|
41 apiVersion: v1
|
|
42 kind: Service
|
|
43 metadata:
|
|
44 name: projects
|
|
45 spec:
|
|
46 ports:
|
|
47 - { port: 80, targetPort: 80 }
|
|
48 selector:
|
|
49 app: projects
|