Docker
Iată un alt tutorial bun: Construirea propriului tău Remote Desktop: RustDesk Self-Hosted on Cloud cu Docker (Hetzner)
Instalează propriul server cu Docker
Cerințe
Trebuie să ai instalat Docker/Podman pentru a rula rustdesk-server ca un container Docker. Dacă nu ești sigur, instalează Docker urmând acest ghid pentru a te asigura că ai cea mai recentă versiune!
Asigură-te că deschizi următoarele porturi în firewall:
hbbs
:21114
(TCP): folosit pentru consola web, disponibil doar în versiuneaPro
.21115
(TCP): folosit pentru testul tipului NAT.21116
(TCP/UDP): Reține că21116
trebuie activat atât pentru TCP, cât și pentru UDP.21116/UDP
este folosit pentru înregistrarea ID-ului și serviciul de heartbeat.21116/TCP
este folosit pentru TCP hole punching și serviciul de conectare.21118
(TCP): folosit pentru a suporta clienții web.
hbbr
:21117
(TCP): folosit pentru serviciile Relay.21119
(TCP): folosit pentru a suporta clienții web.
Dacă nu ai nevoie de suport pentru clienți web, porturile corespunzătoare 21118
, 21119
pot fi dezactivate.
Exemple Docker
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
Note
--net=host
funcționează doar pe Linux, ceea ce face ca hbbs
/hbbr
să vadă adresa IP reală de intrare în locul adresei IP a containerului (172.17.0.1).
Dacă --net=host
funcționează corect, opțiunile -p
nu se folosesc. Pe Windows, omite sudo
și --net=host
.
Te rugăm să elimini --net=host
dacă ai probleme de conectivitate pe platforma ta.
Note
-td
, le poți vizualiza cu docker logs hbbs
. Sau poți rula cu -it
; în acest caz hbbs/hbbr
nu vor rula în modul daemon.Exemple Docker Compose
Pentru a rula fișierele Docker cu compose.yml
așa cum sunt descrise aici, trebuie să ai instalat Docker Compose.
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
Dacă trebuie să faci modificări de configurare, de exemplu să setezi ALWAYS_USE_RELAY=Y, poți folosi variabile de mediu în docker-compose.yml
:
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
Exemple Podman Quadlet
Dacă dorești să rulezi containerele cu Podman ca serviciu systemd poți folosi aceste configurații Quadlet de exemplu:
[Container]
AutoUpdate=registry
Image=ghcr.io/rustdesk/rustdesk-server:latest
Exec=hbbs
Volume=/path/to/rustdesk-server/data:/root
Network=host
[Service]
Restart=always
[Install]
WantedBy=default.target
sau
[Container]
AutoUpdate=registry
Image=ghcr.io/rustdesk/rustdesk-server:latest
Exec=hbbr
Volume=/path/to/rustdesk-server/data:/root
Network=host
[Service]
Restart=always
[Install]
WantedBy=default.target