1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95
|
kind: StorageClass
apiVersion: storage.k8s.io/v1
metadata:
name: <somename>
provisioner: file.csi.azure.com
allowVolumeExpansion: true
mountOptions:
- dir_mode=0777
- file_mode=0777
- uid=0
- gid=0
- mfsymlinks
- cache=strict
- actimeo=30
parameters:
skuName: Standard_LRS
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: <somename>
spec:
accessModes:
- ReadWriteMany
storageClassName: <somename>
resources:
requests:
storage: 5Gi
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: webapi
labels:
app: weather-forecast
spec:
replicas: 1
selector:
matchLabels:
service: webapi
template:
metadata:
labels:
app: weather-forecast
service: webapi
spec:
shareProcessNamespace: true
volumes:
- name: tmp
emptyDir: {}
- name: data
persistentVolumeClaim:
claimName: <somename>
containers:
- image: webapi:latest
name: webapi-container
imagePullPolicy: IfNotPresent
ports:
- containerPort: 80
protocol: TCP
env:
- name: ASPNETCORE_URLS
value: http://+:80
volumeMounts:
- name: tmp
mountPath: /tmp
- name: data
mountPath: /data
- image: sysinternals:latest
imagePullPolicy: Always
name: sysinternals-container
stdin: true
tty: true
volumeMounts:
- name: tmp
mountPath: /tmp
- name: data
mountPath: /data
---
apiVersion: v1
kind: Service
metadata:
name: webapi
labels:
app: weather-forecast
service: webapi
spec:
type: LoadBalancer
ports:
- port: 80
targetPort: 80
protocol: TCP
selector:
service: webapi
|