Create README.md
This commit is contained in:
1 parent
15e4efc356
commit
bbdcefa192
1 file changed
+58
@@ -0,0 +1,58 @@
|
|||||||
|
# Docker Chrome Streamer
|
||||||
|
|
||||||
|
Docker image to run Chrome on a linux VPS and stream it on wherever you want. (Default is YouTube)
|
||||||
|
|
||||||
|
## Disclaimer
|
||||||
|
|
||||||
|
Code is based on [https://github.com/siedi/docker-xvfb-twitch](https://github.com/siedi/docker-xvfb-twitch).
|
||||||
|
|
||||||
|
## Features
|
||||||
|
|
||||||
|
Runs `xvfb` with the window manager `fluxbox`, `vnc` so you can connect from remote and then `chrome`. It includes a separate script to start the stream on YouTube by launching `ffmpeg`.
|
||||||
|
It also records system audio, which `docker-xvfb-twitch` was lacking, and is the reason for this project.
|
||||||
|
|
||||||
|
## Build image
|
||||||
|
|
||||||
|
Just as every other image: `docker build . -t chrome-streamer`, or just `./build.sh`
|
||||||
|
|
||||||
|
## Launch Container
|
||||||
|
|
||||||
|
```
|
||||||
|
docker run -p 127.0.0.1:5900:5900 --rm -v /etc/localtime:/etc/localtime:ro -v /dev/shm/:/dev/shm/ -e TZ=Europe/Berlin -e VNC_SERVER_PASSWORD=<password> -e SERVER_KEY=<your streaming key from youtube> --user chrome --name chrome-streamer --privileged chrome-streamer
|
||||||
|
```
|
||||||
|
|
||||||
|
**Note**: The MacOS VNC client will not be able to login unless you set a password for the VNC server.
|
||||||
|
|
||||||
|
Once the container is running, you can VNC into it at `127.0.0.1` (if you are running the container on a VPS, you might have to start a ssh tunnel first using `ssh -L 5900:localhost:5900 my_vps`)
|
||||||
|
|
||||||
|
Launch Chrome from a terminal window by running.
|
||||||
|
|
||||||
|
```
|
||||||
|
google-chrome
|
||||||
|
```
|
||||||
|
|
||||||
|
You can also start Google Chrome by right-clicking the Desktop and selecting:
|
||||||
|
```
|
||||||
|
Applications > Network > Web Browsing > Google Chrome
|
||||||
|
```
|
||||||
|
|
||||||
|
## Launch stream
|
||||||
|
|
||||||
|
Once everything is set up, you can launch the stream
|
||||||
|
`docker exec -ti chrome-streamer bash /stream.sh`
|
||||||
|
|
||||||
|
If you want to stop it, just press `CTRL-C`
|
||||||
|
|
||||||
|
## Changing the streaming service
|
||||||
|
|
||||||
|
Edit the `stream.sh` and change the stream URL to your streaming service, then rebuild. You may also change some quality settings or change the `ffmpeg` command directly.
|
||||||
|
|
||||||
|
## Security concerns
|
||||||
|
This image starts a X11 VNC server which spawns a framebuffer. Google Chrome
|
||||||
|
also requires that the image be run with the `--privileged` flag set. This flag
|
||||||
|
disables security labeling for the resulting container. Be very careful if you
|
||||||
|
run the container on a non-firewalled host.
|
||||||
|
|
||||||
|
Some applications (such as Google Chrome) will not run under the root user. A
|
||||||
|
non-root user named `chrome` is included for such scenarios.
|
||||||
|
|
||||||
Reference in new issue
Block a user