docs: update README.md
This commit is contained in:
parent
d58b5c2f22
commit
8e6e37e097
1 changed files with 46 additions and 38 deletions
84
README.md
84
README.md
|
|
@ -1,17 +1,33 @@
|
||||||
docker-ubuntu-vnc-desktop
|
# docker-ubuntu-vnc-desktop
|
||||||
=========================
|
|
||||||
|
|
||||||
[](https://hub.docker.com/r/dorowu/ubuntu-desktop-lxde-vnc/)
|
[](https://hub.docker.com/r/dorowu/ubuntu-desktop-lxde-vnc/)
|
||||||
[](https://hub.docker.com/r/dorowu/ubuntu-desktop-lxde-vnc/)
|
[](https://hub.docker.com/r/dorowu/ubuntu-desktop-lxde-vnc/)
|
||||||
|
|
||||||
Docker image to provide HTML5 VNC interface to access a Ubuntu 18.04 LXDE desktop environment.
|
docker-ubuntu-vnc-desktop is a Docker image to provide web VNC interface to access Ubuntu LXDE/LxQT desktop environment.
|
||||||
|
|
||||||
Quick Start
|
<!-- @import "[TOC]" {cmd="toc" depthFrom=2 depthTo=2 orderedList=false} -->
|
||||||
-------------------------
|
|
||||||
|
<!-- code_chunk_output -->
|
||||||
|
|
||||||
|
- [Quick Start](#quick-start)
|
||||||
|
- [VNC Viewer](#vnc-viewer)
|
||||||
|
- [HTTP Base Authentication](#http-base-authentication)
|
||||||
|
- [SSL](#ssl)
|
||||||
|
- [Screen Resolution](#screen-resolution)
|
||||||
|
- [Default Desktop User](#default-desktop-user)
|
||||||
|
- [Deploy to a subdirectory (relative url root)](#deploy-to-a-subdirectory-relative-url-root)
|
||||||
|
- [Sound (Preview version and Linux only)](#sound-preview-version-and-linux-only)
|
||||||
|
- [Generate Dockerfile from jinja template](#generate-dockerfile-from-jinja-template)
|
||||||
|
- [Troubleshooting and FAQ](#troubleshooting-and-faq)
|
||||||
|
- [License](#license)
|
||||||
|
|
||||||
|
<!-- /code_chunk_output -->
|
||||||
|
|
||||||
|
## Quick Start
|
||||||
|
|
||||||
Run the docker container and access with port `6080`
|
Run the docker container and access with port `6080`
|
||||||
|
|
||||||
```
|
```shell
|
||||||
docker run -p 6080:80 -v /dev/shm:/dev/shm dorowu/ubuntu-desktop-lxde-vnc
|
docker run -p 6080:80 -v /dev/shm:/dev/shm dorowu/ubuntu-desktop-lxde-vnc
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
@ -19,7 +35,7 @@ Browse http://127.0.0.1:6080/
|
||||||
|
|
||||||
<img src="https://raw.github.com/fcwu/docker-ubuntu-vnc-desktop/master/screenshots/lxde.png?v1" width=700/>
|
<img src="https://raw.github.com/fcwu/docker-ubuntu-vnc-desktop/master/screenshots/lxde.png?v1" width=700/>
|
||||||
|
|
||||||
**Ubuntu Version**
|
### Ubuntu Flavors
|
||||||
|
|
||||||
Choose your favorite Ubuntu version with [tags](https://hub.docker.com/r/dorowu/ubuntu-desktop-lxde-vnc/tags/)
|
Choose your favorite Ubuntu version with [tags](https://hub.docker.com/r/dorowu/ubuntu-desktop-lxde-vnc/tags/)
|
||||||
|
|
||||||
|
|
@ -30,91 +46,84 @@ Choose your favorite Ubuntu version with [tags](https://hub.docker.com/r/dorowu/
|
||||||
- xenial: Ubuntu 16.04 (deprecated)
|
- xenial: Ubuntu 16.04 (deprecated)
|
||||||
- trusty: Ubuntu 14.04 (deprecated)
|
- trusty: Ubuntu 14.04 (deprecated)
|
||||||
|
|
||||||
VNC Viewer
|
## VNC Viewer
|
||||||
------------------
|
|
||||||
|
|
||||||
Forward VNC service port 5900 to host by
|
Forward VNC service port 5900 to host by
|
||||||
|
|
||||||
```
|
```shell
|
||||||
docker run -p 6080:80 -p 5900:5900 -v /dev/shm:/dev/shm dorowu/ubuntu-desktop-lxde-vnc
|
docker run -p 6080:80 -p 5900:5900 -v /dev/shm:/dev/shm dorowu/ubuntu-desktop-lxde-vnc
|
||||||
```
|
```
|
||||||
|
|
||||||
Now, open the vnc viewer and connect to port 5900. If you would like to protect vnc service by password, set environment variable `VNC_PASSWORD`, for example
|
Now, open the vnc viewer and connect to port 5900. If you would like to protect vnc service by password, set environment variable `VNC_PASSWORD`, for example
|
||||||
|
|
||||||
```
|
```shell
|
||||||
docker run -p 6080:80 -p 5900:5900 -e VNC_PASSWORD=mypassword -v /dev/shm:/dev/shm dorowu/ubuntu-desktop-lxde-vnc
|
docker run -p 6080:80 -p 5900:5900 -e VNC_PASSWORD=mypassword -v /dev/shm:/dev/shm dorowu/ubuntu-desktop-lxde-vnc
|
||||||
```
|
```
|
||||||
|
|
||||||
A prompt will ask password either in the browser or vnc viewer.
|
A prompt will ask password either in the browser or vnc viewer.
|
||||||
|
|
||||||
HTTP Base Authentication
|
## HTTP Base Authentication
|
||||||
---------------------------
|
|
||||||
|
|
||||||
This image provides base access authentication of HTTP via `HTTP_PASSWORD`
|
This image provides base access authentication of HTTP via `HTTP_PASSWORD`
|
||||||
|
|
||||||
```
|
```shell
|
||||||
docker run -p 6080:80 -e HTTP_PASSWORD=mypassword -v /dev/shm:/dev/shm dorowu/ubuntu-desktop-lxde-vnc
|
docker run -p 6080:80 -e HTTP_PASSWORD=mypassword -v /dev/shm:/dev/shm dorowu/ubuntu-desktop-lxde-vnc
|
||||||
```
|
```
|
||||||
|
|
||||||
SSL
|
## SSL
|
||||||
--------------------
|
|
||||||
|
|
||||||
To connect with SSL, generate self signed SSL certificate first if you don't have it
|
To connect with SSL, generate self signed SSL certificate first if you don't have it
|
||||||
|
|
||||||
```
|
```shell
|
||||||
mkdir -p ssl
|
mkdir -p ssl
|
||||||
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout ssl/nginx.key -out ssl/nginx.crt
|
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout ssl/nginx.key -out ssl/nginx.crt
|
||||||
```
|
```
|
||||||
|
|
||||||
Specify SSL port by `SSL_PORT`, certificate path to `/etc/nginx/ssl`, and forward it to 6081
|
Specify SSL port by `SSL_PORT`, certificate path to `/etc/nginx/ssl`, and forward it to 6081
|
||||||
|
|
||||||
```
|
```shell
|
||||||
docker run -p 6081:443 -e SSL_PORT=443 -v ${PWD}/ssl:/etc/nginx/ssl -v /dev/shm:/dev/shm dorowu/ubuntu-desktop-lxde-vnc
|
docker run -p 6081:443 -e SSL_PORT=443 -v ${PWD}/ssl:/etc/nginx/ssl -v /dev/shm:/dev/shm dorowu/ubuntu-desktop-lxde-vnc
|
||||||
```
|
```
|
||||||
|
|
||||||
Screen Resolution
|
## Screen Resolution
|
||||||
------------------
|
|
||||||
|
|
||||||
The Resolution of virtual desktop adapts browser window size when first connecting the server. You may choose a fixed resolution by passing `RESOLUTION` environment variable, for example
|
The Resolution of virtual desktop adapts browser window size when first connecting the server. You may choose a fixed resolution by passing `RESOLUTION` environment variable, for example
|
||||||
|
|
||||||
```
|
```shell
|
||||||
docker run -p 6080:80 -e RESOLUTION=1920x1080 -v /dev/shm:/dev/shm dorowu/ubuntu-desktop-lxde-vnc
|
docker run -p 6080:80 -e RESOLUTION=1920x1080 -v /dev/shm:/dev/shm dorowu/ubuntu-desktop-lxde-vnc
|
||||||
```
|
```
|
||||||
|
|
||||||
Default Desktop User
|
## Default Desktop User
|
||||||
--------------------
|
|
||||||
|
|
||||||
The default user is `root`. You may change the user and password respectively by `USER` and `PASSWORD` environment variable, for example,
|
The default user is `root`. You may change the user and password respectively by `USER` and `PASSWORD` environment variable, for example,
|
||||||
|
|
||||||
```
|
```shell
|
||||||
docker run -p 6080:80 -e USER=doro -e PASSWORD=password -v /dev/shm:/dev/shm dorowu/ubuntu-desktop-lxde-vnc
|
docker run -p 6080:80 -e USER=doro -e PASSWORD=password -v /dev/shm:/dev/shm dorowu/ubuntu-desktop-lxde-vnc
|
||||||
```
|
```
|
||||||
|
|
||||||
Deploy to a subdirectory (relative url root)
|
## Deploy to a subdirectory (relative url root)
|
||||||
--------------------------------------------
|
|
||||||
|
|
||||||
You may deploy this application to a subdirectory, for example `/some-prefix/`. You then can access application by `http://127.0.0.1:6080/some-prefix/`. This can be specified using the `RELATIVE_URL_ROOT` configuration option like this
|
You may deploy this application to a subdirectory, for example `/some-prefix/`. You then can access application by `http://127.0.0.1:6080/some-prefix/`. This can be specified using the `RELATIVE_URL_ROOT` configuration option like this
|
||||||
|
|
||||||
```
|
```shell
|
||||||
docker run -p 6080:80 -e RELATIVE_URL_ROOT=some-prefix dorowu/ubuntu-desktop-lxde-vnc
|
docker run -p 6080:80 -e RELATIVE_URL_ROOT=some-prefix dorowu/ubuntu-desktop-lxde-vnc
|
||||||
```
|
```
|
||||||
|
|
||||||
NOTE: this variable should not have any leading and trailing splash (/)
|
NOTE: this variable should not have any leading and trailing splash (/)
|
||||||
|
|
||||||
Sound (Preview version and Linux only)
|
## Sound (Preview version and Linux only)
|
||||||
--------------------------------------
|
|
||||||
|
|
||||||
It only works in Linux.
|
It only works in Linux.
|
||||||
|
|
||||||
First of all, insert kernel module `snd-aloop` and specify `2` as the index of sound loop device
|
First of all, insert kernel module `snd-aloop` and specify `2` as the index of sound loop device
|
||||||
|
|
||||||
```
|
```shell
|
||||||
sudo modprobe snd-aloop index=2
|
sudo modprobe snd-aloop index=2
|
||||||
```
|
```
|
||||||
|
|
||||||
Start the container
|
Start the container
|
||||||
|
|
||||||
```
|
```shell
|
||||||
docker run -it --rm -p 6080:80 --device /dev/snd -e ALSADEV=hw:2,0 dorowu/ubuntu-desktop-lxde-vnc
|
docker run -it --rm -p 6080:80 --device /dev/snd -e ALSADEV=hw:2,0 dorowu/ubuntu-desktop-lxde-vnc
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
@ -127,8 +136,9 @@ Following is the screen capture of these operations. Turn on your sound at the e
|
||||||
[](http://www.youtube.com/watch?v=Kv9FGClP1-k)
|
[](http://www.youtube.com/watch?v=Kv9FGClP1-k)
|
||||||
|
|
||||||
|
|
||||||
Generate Dockerfile from jinja template
|
## Generate Dockerfile from jinja template
|
||||||
-------------------
|
|
||||||
|
WARNING: Deprecated
|
||||||
|
|
||||||
Dockerfile and configuration can be generated by template.
|
Dockerfile and configuration can be generated by template.
|
||||||
|
|
||||||
|
|
@ -140,17 +150,15 @@ Dockerfile and configuration can be generated by template.
|
||||||
|
|
||||||
Dockerfile and configuration are re-generate if they do not exist. Or you may force to re-generate by removing them with the command `make clean`.
|
Dockerfile and configuration are re-generate if they do not exist. Or you may force to re-generate by removing them with the command `make clean`.
|
||||||
|
|
||||||
Troubleshooting and FAQ
|
## Troubleshooting and FAQ
|
||||||
==================
|
|
||||||
|
|
||||||
1. boot2docker connection issue, https://github.com/fcwu/docker-ubuntu-vnc-desktop/issues/2
|
1. boot2docker connection issue, https://github.com/fcwu/docker-ubuntu-vnc-desktop/issues/2
|
||||||
2. Multi-language supports, https://github.com/fcwu/docker-ubuntu-vnc-desktop/issues/80
|
2. Multi-language supports, https://github.com/fcwu/docker-ubuntu-vnc-desktop/issues/80
|
||||||
3. Autostart, https://github.com/fcwu/docker-ubuntu-vnc-desktop/issues/85
|
3. Autostart, https://github.com/fcwu/docker-ubuntu-vnc-desktop/issues/85#issuecomment-466778407
|
||||||
4. x11vnc arguments(multiptr), https://github.com/fcwu/docker-ubuntu-vnc-desktop/issues/101
|
4. x11vnc arguments(multiptr), https://github.com/fcwu/docker-ubuntu-vnc-desktop/issues/101
|
||||||
5. firefox/chrome crash (/dev/shm), https://github.com/fcwu/docker-ubuntu-vnc-desktop/issues/112
|
5. firefox/chrome crash (/dev/shm), https://github.com/fcwu/docker-ubuntu-vnc-desktop/issues/112
|
||||||
6. resize display size without destroying container, https://github.com/fcwu/docker-ubuntu-vnc-desktop/issues/115#issuecomment-522426037
|
6. resize display size without destroying container, https://github.com/fcwu/docker-ubuntu-vnc-desktop/issues/115#issuecomment-522426037
|
||||||
|
|
||||||
License
|
## License
|
||||||
==================
|
|
||||||
|
|
||||||
See the LICENSE file for details.
|
See the LICENSE file for details.
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue