Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/thanatisia/novnc-startup
A NoVNC + WebSocket (using websockify) setup repository for both bare metal and docker implementation
https://github.com/thanatisia/novnc-startup
Last synced: 9 days ago
JSON representation
A NoVNC + WebSocket (using websockify) setup repository for both bare metal and docker implementation
- Host: GitHub
- URL: https://github.com/thanatisia/novnc-startup
- Owner: Thanatisia
- License: mit
- Created: 2023-07-06T01:53:05.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2023-07-06T02:13:28.000Z (over 1 year ago)
- Last Synced: 2023-09-11T15:27:33.420Z (about 1 year ago)
- Language: Dockerfile
- Size: 5.86 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOGS.md
- License: LICENSE
Awesome Lists containing this project
README
# NoVNC with Websockify
## Information
### Background
```
NoVNC is a Web/browser-based VNC client that uses websockify as a dependency for Websocket capabilities.Using websockify, it can essentially intercept the VNC server's display output and redirect it to NoVNC.
Additionally,
- NoVNC being a generic browser-based VNC client, it can be used with other mediums
- For example
+ as the target for QEMU/KVM, as QEMU/KVM CLI utilities has VNC as a display output
```### Project
- Repositories
+ NoVNC: https://github.com/novnc/novnc
+ Websockify: https://github.com/novnc/websockify
+ for more information, you may refer to my NoVNC documentation [here](https://github.com/Thanatisia/SharedSpace/tree/main/Docs/Home%20Lab/Services%20and%20Tools/VNC%20Clients/NoVNC) (WIP and still needs cleanup though)## Setup
### Dependencies
- If using Docker
+ docker
+ docker-compose
- If using on Host system
+ novnc : A Web-based VNC client that connects to an existing VNC server and displays it on a browser using WebSocket
- If installing using Package Manager
- apt-based (Debian)
```console
apt install novnc
```
- Manual Build from Source
+ Just download the repository from [NoVNC GitHub](https://github.com/novnc/novnc) and place it in the folder '/usr/share/novnc'
+ websockify : A Websocket framework made in Javascript; Used with NoVNC to support the displaying of a VNC server on a browser
- If installing using Package Manager
- apt-based (Debian)
```console
apt install websockify
```
- Manual Build from Source
+ Clone from [GitHub - Websockify](https://github.com/novnc/websockify)### Pre-Requisites
- Ensure the NoVNC client is installed
+ Take note of the path that contains the NoVNC client source
- If you are using `docker-compose`
- Customize the docker-compose## Documentation
### Using docker run
- Building Dockerfile image
```console
docker build --tag thanatisia/novnc -f docker/Dockerfile .
```- Starting up
```console
docker run -itd --name novnc -p 8080:6080 -v "/path/to/novnc:/usr/share/novnc" -e VNC_WEB_CLIENT=/usr/share/novnc -e VNC_WEB_PORT=6080 -e VNC_SERVER_HOST_IP=localhost -e VNC_SERVER_HOST_PORT=5901 thanatisia/novnc
```### Using docker-compose
- Starting up (WIP)
+ You can try, but there are some issues, please refer to [ISSUES](ISSUES.md) for the list
```console
docker-compose up -d --build
```### Bare-Metal
- Starting up
- Explanations
+ novnc-webui-path : The path to the NoVNC WebUI folder; Default: /usr/share/novnc
+ novnc-webui-port-number: The WebUI Port Number; Default: 6080
+ novnc-webui-host : The WebUI Host IP address/name; Default: localhost
+ vnc-server-port-number : The VNC server port number; This port corresponds to the port used to connect to the VNC server you set up + display number; Default: 5901
```console
websockify -D --web=[novnc-webui-path] [novnc-webui-port-number] [novnc-webui-host]:[vnc-server-port-number]
```## Wiki
### Snippets and Examples
- Starting up NoVNC WebUI
+ Open up your browser
+ Access the URL `http(s)://[server-ip-address]:[vnc-web-port-number]/vnc.html`## Configurations
### Docker
- Environment Variables
+ VNC_WEB_CLIENT : The path to the VNC Web/browser-based client source file; Default '/usr/share/novnc'
+ VNC_WEB_PORT : The WebUI HTTP port number; Default: 6080
+ VNC_SERVER_HOST_IP : The VNC Server Host IP address/domain; Default: localhost
+ VNC_SERVER_HOST_PORT: The VNC server port number; This port is equivalent to the port used to connect to the VNC server you set up; Default: 5901
+ OTHER_OPTIONS : The VNC Web/browser client other options; Default: '-D'## Resources
## References
## Remarks