Docker
Tutaj jest inny dobry poradnik: Tworzenie własnego rozwiązania zdalnego pulpitu: RustDesk hostowany samodzielnie w chmurze za pomocą Dockera (Hetzner)
Zainstaluj twój własny serwer za pomocą Dockera
Wymagania
Potrzebujesz zainstalowanego Dockera/Podmana aby uruchomić rustdesk-server jako kontener Dockerowy. W razie wątpliwości, zainstaluj Dockera przy użyciu tego poradnika aby upewnić się, że wszystko jest aktulane.
Upewnij się, że zezwoliłeś na te porty w zaporze:
hbbs
:21114
(TCP): używany do konsoli webowej, dostępnej wyłącznie w wersjiPro
.21115
(TCP): używany do testowania typu NAT.21116
(TCP/UDP): Zwróć uwagę, że21116
powinien być zezwolony zarówno dla TCP jak i UDP.21116/UDP
jest używany do rejestracji ID i usługi heartbeat.21116/TCP
jest używany do przebijania się przez NAT (TCP) i usługi połączeniowej.21118
(TCP): używany do obsługi klientów webowych.
hbbr
:21117
(TCP): używany do usług serwera przekaźnikowego.21119
(TCP): używany do obsługi klientów webowych.
Jeżeli nie potrzebujesz obsługi klientów webowych, porty 21118
i 21119
mogą zostać zablokowane.
Przykłady z Dockerem
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
działa wyłącznie na Linuxie i sprawia, że hbbs
/hbbr
widzi prawdziwy przychodzący adres IP, a nie adres kontenera (172.17.0.1).
Jeżeli --net=host
działa poprawnie, parametry -p
nie są używany. Jeżeli działasz na Windowsie, nie używaj sudo
ani --net=host
.
Usuń --net=host
jeżeli masz problemy z połączeniem na twojej platformie.
Note
-td
, możesz podejrzeć logi za pomocą docker logs hbbs
. Możesz także uruchomić kontenery za pomocą -it
, wtedy hbbs/hbbr
nie zostaną uruchomione w trybie daemona.Przykłady z Docker Composem
Aby uruchomić pliki Docker z plikiem compose.yml
zgodnie z opisem tutaj, musisz mieć zainstalowany 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
Jeśli chcesz wprowadzić zmiany w konfiguracji, np. ustawić ALWAYS_USE_RELAY=Y, możesz ustawić zmienne środowiskowe w pliku 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
Przykłady z Podmanem Quadlet
Jeśli chcesz uruchomić kontenery za pomocą Podman jako usługę systemd, możesz skorzystać z poniższych przykładowych konfiguracji Podman Quadlet:
[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
or
[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