You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+22-4Lines changed: 22 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,11 +1,13 @@
1
1
# Go WebSockify
2
-
> RFC 6455 compliant TCP and Unix socket proxy to WebSockets.
2
+
> RFC 6455 compliant TCP to WebSocket proxy.
3
3
4
-
Go WebSockify is a pure Go implementation of [novnc/websockify](https://github.com/novnc/websockify) TCP/Unix to WebSocket proxy with improved connection handling. Runs on Linux, Windows and MacOS.
4
+
Go WebSockify is a pure Go implementation of [novnc/websockify](https://github.com/novnc/websockify) TCP to WebSocket proxy with improved connection handling. Runs on Linux, Windows and MacOS.
5
5
6
6
## Table of Contents
7
7
-[Installation](#installation)
8
8
-[Build from source](#build-from-source)
9
+
-[Features](#features)
10
+
-[Use Cases](#use-cases)
9
11
-[Usage](#usage)
10
12
-[Development](#development)
11
13
-[Dependencies](#dependencies)
@@ -14,6 +16,7 @@ Go WebSockify is a pure Go implementation of [novnc/websockify](https://github.c
14
16
-[Docker](#docker)
15
17
-[Screenshots](#screenshots)
16
18
-[Prometheus Metrics](#prometheus-metrics)
19
+
-[Roadmap](#roadmap)
17
20
-[Contributing](#contributing)
18
21
-[License](#license)
19
22
@@ -26,10 +29,18 @@ $ cd go-websockify
26
29
$ make
27
30
```
28
31
32
+
## Features
33
+
- Runs in user space.
34
+
- Proxy any TCP connection to a WebSocket connection.
35
+
-`go-websockify` can be ran as a daemon by passing the command line flag `-D` or `--daemon` to run in the background.
36
+
37
+
## Use Cases
38
+
The most common use case for `go-websockify` is alongside [novnc](https://github.com/novnc) to enable fast virtual desktop experiences in the browser.
@@ -104,6 +115,13 @@ Go WebSockify exports the following Prometheus metrics at `/metrics`:
104
115
- go_websockify_websocket_connections_active
105
116
- go_websockify_tcp_connections_active
106
117
118
+
## Roadmap
119
+
-[ ] Support TLS on WebSocket connections.
120
+
-[ ] Support authenticating WebSocket connections through a plugin system (https://github.com/traefik/yaegi).
121
+
-[ ] Support for proxying UNIX sockets to WebSockets.
122
+
-[ ] Support backend TCP connection reuse.
123
+
-[ ] Wrapping any program with the `LD_PRELOAD` trick to catch `bind()` system calls. See: https://jvns.ca/blog/2014/11/27/ld-preload-is-super-fun-and-easy/.
124
+
107
125
## Contributing
108
126
Both pull requests and issues are welcome on [GitHub](https://github.com/msquee/go-websockify). No set rules for contributing, just keep it clean.
0 commit comments