Note
This repository was forked on 2024-01-05 directly from wavezhang/virtVNC as of commit 0fe6d5a.
Since 2024-01-05, the following enhancements have been made to the original fork:
- Bumped
bitnami/kubectl
base image to1.29.0
- Bumped
noVNC
to1.5.0
(contents in/static/app
) - Changed Service
NodePort
toClusterIP
... thus intentionally removing access to8001/tcp
from outside the k8s cluster - Added IngressRoute with Basic HTTP-Auth using Traefik MiddleWares
- Added basic CSS styling using
- Changed k8s definitions from
virtvnc
tokv-novnc
in effort to avoid confusion amongst the various forks of the original wavezhang/virtVNC project
Note
The software in this repository is provided "as is" with absolutely no guarantees or warranties. MIT License applies.
This deployment example assumes the following:
- Kubevirt installed in namespace
kubevirt
- Traefik installed in namespace
traefik
- Traefik
websecure
ingress endpoint exists
- Download the
kv-novnc.yaml
manifest
wget https://raw.githubusercontent.com/scog/kubevirt-novnc/main/k8s/kv-novnc.yaml
- Edit
kv-novnc.yaml
and modify the default variables:
vim kv-novnc.yaml
---
data:
username: c29tZXVzZXI= # default value: someuser (base64 encoded)
password: c29tZXBhc3M= # default value: somepass (base64 encoded)
---
routes:
- match: "Host(`kv-novnc.localhost`)" # Set desired hostname
kind: Rule
---
- Deploy the
kv-novnc.yaml
manifest:
kubectl apply -f kv-novnc.yaml
- Navigate to the hostname configured in
Host()
above... along with?namespace=
URI parameter. For example:
https://kv-novnc.localhost/?namespace=kubevirt
Pre-built container images are available here: https://github.com/users/scog/packages/container/package/kubevirt-novnc