Files
2025-12-04 15:33:43 +00:00

84 lines
2.7 KiB
YAML

apiVersion: apps/v1
kind: Deployment
metadata:
name: otbr
namespace: otbr
labels:
app: otbr
spec:
replicas: 1
selector:
matchLabels:
app: otbr
template:
metadata:
labels:
app: otbr
spec:
hostNetwork: true # Wichtig für direkten Netzwerkzugriff und mDNS
containers:
- name: otbr
image: openthread/border-router:latest # Offizielles Docker-Image
securityContext:
# Benötigt NET_ADMIN, um Netzwerkschnittstellen zu konfigurieren
capabilities:
add: ["NET_ADMIN"]
privileged: true # Privilegierter Modus kann notwendig sein für vollen Gerätezugriff
env:
# Konfigurieren Sie die Umgebungsvariablen entsprechend Ihrem Setup
- name: OT_RCP_DEVICE
# Passen Sie den Pfad zu Ihrem USB-Gerät an
value: "spinel+hdlc+uart:///dev/ttyACM0?uart-baudrate=115200"
- name: OT_INFRA_IF
# Name Ihrer Host-Netzwerkschnittstelle (z.B. eth0 oder wlan0)
value: "eno1"
- name: OT_THREAD_IF
value: "wpan0" # Standardwert
- name: OT_LOG_LEVEL
value: "7"
ports:
# Ports, die der OTBR für Web-GUI (80), mDNS, CoAP benötigt
- containerPort: 80
hostPort: 80
protocol: TCP
- containerPort: 80
hostPort: 80
protocol: UDP
# Weitere notwendige Ports für Thread/Matter Kommunikation
- containerPort: 5353
hostPort: 5353
protocol: UDP
- containerPort: 49153
hostPort: 49153
protocol: UDP
- containerPort: 5180
hostPort: 5180
protocol: UDP
- containerPort: 5683
hostPort: 5683
protocol: UDP
volumeMounts:
- name: otbr-data
mountPath: /data
- name: device-tun
mountPath: /dev/net/tun
# Zugriff auf das physische USB-Gerät
- name: device-rcp
mountPath: /dev/ttyACM0 # Muss zum OT_RCP_DEVICE passen
resources:
limits:
akri.sh/akri-conbeeii: "1"
requests:
akri.sh/akri-conbeeii: "1"
volumes:
- name: otbr-data
hostPath:
path: /var/lib/otbr # Speicherort auf dem Host für persistente Daten
type: DirectoryOrCreate
- name: device-tun
hostPath:
path: /dev/net/tun
- name: device-rcp
hostPath:
path: /dev/ttyACM0 # Muss zum OT_RCP_DEVICE passen