5.0 KiB
title, weight, description, keywords
| title | weight | description | keywords | ||||||
|---|---|---|---|---|---|---|---|---|---|
| Docker | 7 | RustDesk-Dokumentation zu Docker. Hier finden Sie Anleitungen zur Installation, Konfiguration, Bereitstellung und Fehlerbehebung. |
|
Kurze Antwort
Docker ist der einfachste Weg, RustDesk Server OSS zu betreiben, wenn Sie eine reproduzierbare Bereitstellung und einfachere Updates möchten. Achten Sie darauf, persistente Daten zu mounten und sowohl hbbs als auch hbbr korrekt zu konfigurieren.
Wichtige Punkte
- Persistieren Sie das Datenverzeichnis, bevor Sie Container aktualisieren oder neu erstellen
- Geben Sie die erforderlichen RustDesk-Ports frei
- Betreiben Sie sowohl
hbbsals auchhbbr - Bevorzugen Sie Compose, wenn Sie den laufenden Betrieb vereinfachen möchten
Hier ist ein weiteres gutes Tutorial: Erstellen Sie Ihre eigene Remote-Desktop-Lösung: RustDesk Self-Hosted in der Cloud mit Docker (Hetzner)
Installieren Sie Ihren eigenen Server mit Docker
Anforderungen
Sie müssen Docker/Podman installiert haben, um einen rustdesk-server als Docker-Container auszuführen. Im Zweifelsfall installieren Sie Docker mit dieser Anleitung, um sicherzustellen, dass es auf dem neuesten Stand ist!
Stellen Sie sicher, dass Sie diese Ports in der Firewall öffnen:
hbbs:21114(TCP): für die Webkonsole verwendet, nur in derPro-Version verfügbar.21115(TCP): für den NAT-Typ-Test verwendet.21116(TCP/UDP): Bitte beachten Sie, dass21116sowohl für TCP als auch für UDP aktiviert sein sollte.21116/UDPwird für die ID-Registrierung und den Heartbeat-Dienst verwendet.21116/TCPwird für das TCP-Hole-Punching und den Verbindungsdienst verwendet.21118(TCP): zur Unterstützung von Webclients verwendet.
hbbr:21117(TCP): für die Relay-Dienste verwendet.21119(TCP): zur Unterstützung von Webclients verwendet.
Wenn Sie keine Webclient-Unterstützung benötigen, können die entsprechenden Ports 21118, 21119 deaktiviert werden.
Docker-Beispiele
sudo docker image pull rustdesk/rustdesk-server
sudo docker run --name hbbs -v ./data:/root -td --net=host --restart unless-stopped rustdesk/rustdesk-server hbbs
sudo docker run --name hbbr -v ./data:/root -td --net=host --restart unless-stopped rustdesk/rustdesk-server hbbr
{{% notice note %}}
--net=host funktioniert nur unter Linux, wodurch hbbs/hbbr die tatsächliche eingehende IP-Adresse anstelle der Container-IP (172.17.0.1) sehen.
Wenn --net=host gut funktioniert, werden die -p-Optionen nicht verwendet. Wenn Sie unter Windows arbeiten, lassen Sie sudo und --net=host weg.
Bitte entfernen Sie --net=host, wenn Sie Verbindungsprobleme auf Ihrer Plattform haben.
{{% /notice %}}
{{% notice note %}}
Wenn Sie mit -td keine Logs sehen können, können Sie Logs über docker logs hbbs anzeigen. Oder Sie können mit -it ausführen, dann laufen hbbs/hbbr nicht im Daemon-Modus.
{{% /notice %}}
Docker Compose-Beispiele
Um die Docker-Dateien mit der hier beschriebenen compose.yml auszuführen, müssen Sie Docker Compose installiert haben.
services:
hbbs:
container_name: hbbs
image: rustdesk/rustdesk-server:latest
command: hbbs
volumes:
- ./data:/root
network_mode: "host"
depends_on:
- hbbr
restart: unless-stopped
hbbr:
container_name: hbbr
image: rustdesk/rustdesk-server:latest
command: hbbr
volumes:
- ./data:/root
network_mode: "host"
restart: unless-stopped
Wenn Sie Konfigurationsänderungen vornehmen müssen, z.B. ALWAYS_USE_RELAY=Y setzen, können Sie environment in der docker-compose.yml verwenden
services:
hbbs:
container_name: hbbs
image: rustdesk/rustdesk-server:latest
environment:
- ALWAYS_USE_RELAY=Y
command: hbbs
volumes:
- ./data:/root
network_mode: "host"
depends_on:
- hbbr
restart: unless-stopped
hbbr:
container_name: hbbr
image: rustdesk/rustdesk-server:latest
command: hbbr
volumes:
- ./data:/root
network_mode: "host"
restart: unless-stopped
Podman Quadlet-Beispiele
Wenn Sie die Container mit Podman als systemd-Dienst ausführen möchten, können Sie diese Beispiel-Podman-Quadlet-Konfigurationen verwenden:
[Container]
AutoUpdate=registry
Image=rustdesk/rustdesk-server:latest
Exec=hbbs
Volume=/path/to/rustdesk-server/data:/root
Network=host
[Service]
Restart=always
[Install]
WantedBy=default.target
oder
[Container]
AutoUpdate=registry
Image=rustdesk/rustdesk-server:latest
Exec=hbbr
Volume=/path/to/rustdesk-server/data:/root
Network=host
[Service]
Restart=always
[Install]
WantedBy=default.target