Closed secana closed 2 years ago
I think it's a bit early for kubernetes support. If we insert this into the docs repo, we should start to support kubernetes installations, but the containers IMHO are not ready yet.
Specifically, we need:
Thanks for the response. I understand why rustdesk isn't ready to support kubernetes officially. It is fine be me, if this issue gets closed. If someone searches for a solution to run it on k8s until official support is there, finding this issue with google is a good option.
I totally agree
NodePort
not works?
For a helm configuration, you can use app-template which builds on the common library from bjw-s. This is my code (using pulumi).
```typescript import { Namespace } from "@pulumi/kubernetes/core/v1"; import { Release } from "@pulumi/kubernetes/helm/v3"; export const rustdesk = (namespace: Namespace, localDomain: string ) => { new Release("rustdesk", { name: "rustdesk", repositoryOpts: { repo: "https://bjw-s.github.io/helm-charts", }, chart: "app-template", namespace: namespace.metadata.name, values: { controllers: { rustdesk: { containers: { hbbr: { image: { repository: "rustdesk/rustdesk-server", tag: "latest", }, args: [ "hbbr", ], ports: [ { containerPort: 21117 }, { containerPort: 21119 }, ], }, hbbs: { image: { repository: "rustdesk/rustdesk-server", tag: "latest", }, args: [ "hbbs", "-r", "localhost:21117", ], ports: [ { containerPort: 21115 }, { containerPort: 21116 }, { containerPort: 21116, protocol: "UDP" }, { containerPort: 21118 }, ], }, }, }, }, persistence: { hbbr: { type: "persistentVolumeClaim", accessMode: "ReadWriteOnce", size: "1Gi", advancedMounts: { rustdesk: { hbbr: [{ path: "/root", }], }, }, }, hbbs: { type: "persistentVolumeClaim", accessMode: "ReadWriteOnce", size: "1Gi", advancedMounts: { rustdesk: { hbbs: [{ path: "/root", }], }, }, }, }, service: { main: { controller: "rustdesk", type: "LoadBalancer", annotations: { "external-dns.alpha.kubernetes.io/hostname": `rustdesk.${localDomain}`, "metallb.universe.tf/address-pool": "default", "metallb.universe.tf/allow-shared-ip": "10.0.1.30", }, ports: { nat: { port: 21115, protocol: "TCP", }, register: { port: 21116, protocol: "UDP", }, hole: { port: 21116, protocol: "TCP", }, relay: { port: 21117, protocol: "TCP", }, hbbsweb: { enabled: false, port: 21118, }, hbbrweb: { enabled: false, port: 21119, }, }, }, }, }, }, { parent: namespace }); } ```
Hi, I've installed rustdesk on Kubernetes based on the Docker Compose example.
Maybe you are interested in adding the deployment as an example on the docs page.
rustdesk.yaml
:Deploy the whole application with
kubectl apply -f rustdesk.yaml
I had no time to create a helm chart to automate the deployment above, but maybe I'm doing that later.