Loading compose.yml +1 −0 Original line number Diff line number Diff line Loading @@ -6,6 +6,7 @@ services: VERSION: "11" devices: - /dev/kvm - /dev/net/tun cap_add: - NET_ADMIN ports: Loading kubernetes.yml +50 −47 Original line number Diff line number Diff line --- apiVersion: v1 kind: PersistentVolumeClaim metadata: Loading @@ -16,19 +17,9 @@ metadata: labels: name: windows spec: terminationGracePeriodSeconds: 120 # the Kubernetes default is 30 seconds and it may be not enough containers: - name: windows image: dockurr/windows ports: - containerPort: 8006 protocol: TCP - containerPort: 3389 protocol: TCP - containerPort: 3389 protocol: UDP securityContext: privileged: true env: - name: VERSION value: "11" Loading @@ -38,37 +29,49 @@ spec: value: "2" - name: DISK_SIZE value: "64G" ports: - containerPort: 8006 - containerPort: 3389 - containerPort: 3389 protocol: UDP securityContext: capabilities: add: - NET_ADMIN privileged: true volumeMounts: - mountPath: /storage name: storage - mountPath: /dev/kvm name: dev-kvm - mountPath: /dev/net/tun name: dev-tun terminationGracePeriodSeconds: 120 volumes: - name: storage persistentVolumeClaim: claimName: windows-pvc - name: dev-kvm hostPath: - hostPath: path: /dev/kvm name: dev-kvm - hostPath: path: /dev/net/tun type: CharDevice name: dev-tun --- apiVersion: v1 kind: Service metadata: name: windows spec: type: NodePort selector: name: windows ports: - name: tcp-8006 protocol: TCP port: 8006 targetPort: 8006 - name: tcp-3389 protocol: TCP port: 3389 targetPort: 3389 - name: udp-3389 protocol: UDP port: 3389 targetPort: 3389 protocol: UDP selector: name: windows type: NodePort readme.md +2 −1 Original line number Diff line number Diff line Loading @@ -37,6 +37,7 @@ services: VERSION: "11" devices: - /dev/kvm - /dev/net/tun cap_add: - NET_ADMIN ports: Loading @@ -49,7 +50,7 @@ services: Via Docker CLI: ```bash docker run -it --rm -p 8006:8006 --device=/dev/kvm --cap-add NET_ADMIN --stop-timeout 120 dockurr/windows docker run -it --rm -p 8006:8006 --device=/dev/kvm --device=/dev/net/tun --cap-add NET_ADMIN --stop-timeout 120 dockurr/windows ``` Via Kubernetes: Loading Loading
compose.yml +1 −0 Original line number Diff line number Diff line Loading @@ -6,6 +6,7 @@ services: VERSION: "11" devices: - /dev/kvm - /dev/net/tun cap_add: - NET_ADMIN ports: Loading
kubernetes.yml +50 −47 Original line number Diff line number Diff line --- apiVersion: v1 kind: PersistentVolumeClaim metadata: Loading @@ -16,19 +17,9 @@ metadata: labels: name: windows spec: terminationGracePeriodSeconds: 120 # the Kubernetes default is 30 seconds and it may be not enough containers: - name: windows image: dockurr/windows ports: - containerPort: 8006 protocol: TCP - containerPort: 3389 protocol: TCP - containerPort: 3389 protocol: UDP securityContext: privileged: true env: - name: VERSION value: "11" Loading @@ -38,37 +29,49 @@ spec: value: "2" - name: DISK_SIZE value: "64G" ports: - containerPort: 8006 - containerPort: 3389 - containerPort: 3389 protocol: UDP securityContext: capabilities: add: - NET_ADMIN privileged: true volumeMounts: - mountPath: /storage name: storage - mountPath: /dev/kvm name: dev-kvm - mountPath: /dev/net/tun name: dev-tun terminationGracePeriodSeconds: 120 volumes: - name: storage persistentVolumeClaim: claimName: windows-pvc - name: dev-kvm hostPath: - hostPath: path: /dev/kvm name: dev-kvm - hostPath: path: /dev/net/tun type: CharDevice name: dev-tun --- apiVersion: v1 kind: Service metadata: name: windows spec: type: NodePort selector: name: windows ports: - name: tcp-8006 protocol: TCP port: 8006 targetPort: 8006 - name: tcp-3389 protocol: TCP port: 3389 targetPort: 3389 - name: udp-3389 protocol: UDP port: 3389 targetPort: 3389 protocol: UDP selector: name: windows type: NodePort
readme.md +2 −1 Original line number Diff line number Diff line Loading @@ -37,6 +37,7 @@ services: VERSION: "11" devices: - /dev/kvm - /dev/net/tun cap_add: - NET_ADMIN ports: Loading @@ -49,7 +50,7 @@ services: Via Docker CLI: ```bash docker run -it --rm -p 8006:8006 --device=/dev/kvm --cap-add NET_ADMIN --stop-timeout 120 dockurr/windows docker run -it --rm -p 8006:8006 --device=/dev/kvm --device=/dev/net/tun --cap-add NET_ADMIN --stop-timeout 120 dockurr/windows ``` Via Kubernetes: Loading