docs: Add TUN device (#148)
Some checks failed
Update / dockerHubDescription (push) Has been cancelled

This commit is contained in:
Kroese 2024-12-01 18:06:30 +01:00 committed by GitHub
parent 01e809c0aa
commit 22fedbfa72
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 53 additions and 46 deletions

View file

@ -6,6 +6,7 @@ services:
VERSION: "13"
devices:
- /dev/kvm
- /dev/net/tun
cap_add:
- NET_ADMIN
ports:

View file

@ -1,10 +1,11 @@
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: macos-pvc
spec:
accessModes:
- ReadWriteOnce
- ReadWriteOnce
resources:
requests:
storage: 64Gi
@ -16,57 +17,61 @@ metadata:
labels:
name: macos
spec:
terminationGracePeriodSeconds: 120 # the Kubernetes default is 30 seconds and it may be not enough
containers:
- name: macos
image: dockurr/macos
ports:
- containerPort: 8006
protocol: TCP
- containerPort: 5000
protocol: TCP
- containerPort: 5000
protocol: UDP
securityContext:
privileged: true
env:
- name: RAM_SIZE
value: 4G
- name: CPU_CORES
value: "2"
- name: DISK_SIZE
value: "64G"
volumeMounts:
- mountPath: /storage
name: storage
- mountPath: /dev/kvm
name: dev-kvm
- name: macos
image: dockurr/macos
env:
- name: VERSION
value: "13"
- name: RAM_SIZE
value: "4G"
- name: CPU_CORES
value: "2"
- name: DISK_SIZE
value: "64G"
ports:
- containerPort: 8006
- containerPort: 5900
- containerPort: 5900
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: macos-pvc
- name: dev-kvm
hostPath:
path: /dev/kvm
- name: storage
persistentVolumeClaim:
claimName: macos-pvc
- hostPath:
path: /dev/kvm
name: dev-kvm
- hostPath:
path: /dev/net/tun
type: CharDevice
name: dev-tun
---
apiVersion: v1
kind: Service
metadata:
name: macos
spec:
type: NodePort
ports:
- name: tcp-8006
port: 8006
- name: tcp-5900
port: 5900
- name: udp-5900
port: 5900
protocol: UDP
selector:
name: macos
ports:
- name: tcp-8006
protocol: TCP
port: 8006
targetPort: 8006
- name: tcp-5900
protocol: TCP
port: 5900
targetPort: 5900
- name: udp-5900
protocol: UDP
port: 5900
targetPort: 5900
type: NodePort

View file

@ -33,6 +33,7 @@ services:
VERSION: "13"
devices:
- /dev/kvm
- /dev/net/tun
cap_add:
- NET_ADMIN
ports:
@ -45,7 +46,7 @@ services:
Via Docker CLI:
```bash
docker run -it --rm -p 8006:8006 --device=/dev/kvm --cap-add NET_ADMIN --stop-timeout 120 dockurr/macos
docker run -it --rm -p 8006:8006 --device=/dev/kvm --device=/dev/net/tun --cap-add NET_ADMIN --stop-timeout 120 dockurr/macos
```
Via Kubernetes: