diff --git a/docker-compose.yml.example b/docker-compose.yml.example new file mode 100644 index 0000000..ba070db --- /dev/null +++ b/docker-compose.yml.example @@ -0,0 +1,64 @@ +# RustDesk full stack (server + relay + API/Web Admin) — self-contained example. +# +# Copy to docker-compose.yml and adjust the public IP / keys / secrets: +# cp docker-compose.yml.example docker-compose.yml +# +# Everything is inline (no .env). The Ed25519 key below is an EXAMPLE — generate +# your own for production. The two keys belong together: +# - hbbs/hbbr get the SECRET key via -k +# - rustdesk-api gets the matching PUBLIC key via RUSTDESK_API_RUSTDESK_KEY +# (the public key is also what clients see as their "Key"). + +services: + hbbs: + container_name: hbbs + image: rustdesk/rustdesk-server:latest + command: hbbs -r 194.164.204.114:21117 -k 1jqLELJaIjaRtt1Tcj6BhqJ7DhT9WszBH/XUHrqJdhdg4K98HmANQFOpUx/vPZFRWnHPTYYHyIB8uH3Xxr8PTw== + environment: + - TZ=Europe/Berlin + - ENCRYPTED_ONLY=1 + - MUST_LOGIN=Y + volumes: + - ./data/server:/root + ports: + - "21115:21115" + - "21116:21116" + - "21116:21116/udp" + - "21118:21118" + depends_on: + - hbbr + restart: unless-stopped + + hbbr: + container_name: hbbr + image: rustdesk/rustdesk-server:latest + command: hbbr -k 1jqLELJaIjaRtt1Tcj6BhqJ7DhT9WszBH/XUHrqJdhdg4K98HmANQFOpUx/vPZFRWnHPTYYHyIB8uH3Xxr8PTw== + environment: + - TZ=Europe/Berlin + volumes: + - ./data/server:/root + ports: + - "21117:21117" + - "21119:21119" + restart: unless-stopped + + rustdesk-api: + container_name: rustdesk-api + image: git.hackner.dev/thomas/rustdesk-api:latest + command: ["./apimain"] + environment: + - TZ=Europe/Berlin + - RUSTDESK_API_LANG=en + - RUSTDESK_API_RUSTDESK_ID_SERVER=194.164.204.114:21116 + - RUSTDESK_API_RUSTDESK_RELAY_SERVER=194.164.204.114:21117 + - RUSTDESK_API_RUSTDESK_API_SERVER=http://194.164.204.114:21114 + - RUSTDESK_API_RUSTDESK_KEY=YOCvfB5gDUBTqVMf7z2RUVpxz02GB8iAfLh918a/D08= + - RUSTDESK_API_JWT_KEY=z5rt4z465rtzdh5sudtuzrutd66zz6 + ports: + - "21114:21114" + volumes: + - ./api:/app/data + depends_on: + - hbbs + - hbbr + restart: unless-stopped