docker-windows/kubernetes.yml

74 lines
1.4 KiB
YAML
Raw Normal View History

2024-03-22 17:53:18 +08:00
apiVersion: v1
2024-05-16 02:16:18 +02:00
kind: PersistentVolumeClaim
metadata:
name: windows-pvc
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 64Gi
---
apiVersion: v1
2024-03-22 17:53:18 +08:00
kind: Pod
metadata:
2024-05-16 02:16:18 +02:00
name: windows
2024-03-22 17:53:18 +08:00
labels:
2024-05-16 02:16:18 +02:00
name: windows
2024-03-22 17:53:18 +08:00
spec:
2024-05-16 02:16:18 +02:00
terminationGracePeriodSeconds: 120 # the Kubernetes default is 30 seconds and it may be not enough
2024-03-22 17:53:18 +08:00
containers:
- name: windows
image: dockurr/windows
ports:
- containerPort: 8006
2024-05-16 02:16:18 +02:00
protocol: TCP
2024-03-22 17:53:18 +08:00
- containerPort: 3389
protocol: TCP
2024-05-16 02:16:18 +02:00
- containerPort: 3389
protocol: UDP
2024-03-22 17:53:18 +08:00
resources:
limits:
devices.kubevirt.io/kvm: 1
securityContext:
privileged: true
env:
- name: RAM_SIZE
2024-05-16 02:16:18 +02:00
value: 4G
2024-03-22 17:53:18 +08:00
- name: CPU_CORES
2024-05-16 02:16:18 +02:00
value: "2"
- name: DISK_SIZE
value: "64G"
volumeMounts:
- mountPath: /storage
name: storage
volumes:
- name: storage
persistentVolumeClaim:
claimName: windows-pvc
2024-03-22 17:53:18 +08:00
---
apiVersion: v1
kind: Service
metadata:
2024-05-16 02:16:18 +02:00
name: windows
2024-03-22 17:53:18 +08:00
spec:
type: NodePort
selector:
2024-05-16 02:16:18 +02:00
name: windows
2024-03-22 17:53:18 +08:00
ports:
- name: tcp-8006
protocol: TCP
port: 8006
targetPort: 8006
nodePort: 48006
- name: tcp-3389
protocol: TCP
port: 3389
targetPort: 3389
nodePort: 43389
2024-05-16 02:16:18 +02:00
- name: udp-3389
protocol: UDP
port: 3389
targetPort: 3389
nodePort: 43388