rDod can be launch as it but you might want to customize. To do so, a few environment variables are available such as :
If you are using docker-compose you can also edit the docker-compose file to customize rDod
rDod cab be launch by 2 different ways :
Docker-Compose is the easiest way to launch rDoD. By using it the Home of the rDod user will be persistent.
You can use Docker-Compose to download and launch rDoD by using the following command:
docker-compose up
It's also possible to launch rDoD in "detach" mode by adding the -d parameter:
docker-compose up -d
You can launch rDoD by using the classical Docker CLI. That way permit a better customization but will require to write a longer command line.
docker run -p 5901:5901 -p 5911:5911 mderasse/rdod:latest
Of course you can replace latest by another image tag.
You might also want to have a persistent Home. You can do this by using the parameter -v like :
docker run -p 5901:5901 -p 5911:5911 -v $(pwd)/home:/home/user mderasse/rdod:latest
You might also want to use those parameter :
rDoD currently provide 2 different ways of access.
In order to acces to rDoD by using VNC you will have to install the TigerVNC viewer.
You can find the different binary depending of your OS on that link: TigerVNC Viewer
After the installation done you will have to launch the client and connect to :
YOUR_IP:5901
noVNC is a HTML5 Client. You can access it directly by using your favorite Web Browser
http://YOUR_IP:5911
Don't forget to change HTTP to HTTPS is USE_SSL is enabled.
rDoD is made in a way that it's really easy to extend it.
Do to so you will have to create a Dockerfile like the following one:
FROM mderasse/rdod:latest
LABEL maintainer="Matthieu DERASSE <github@derasse.fr>"
# Back to Root
USER 0
# Configure Custom System
COPY ....
RUN ....
# Back to User
USER 1000
Please, take a look at the customs directory, that can be a good source of inspiration. Feel free to share your version by creating a pull Request!
1) noVNC does not handle well all the keyboard key
Un VNC par le port 23 (https) gratuit pour une utilisation non commerciale).
HOWTO: Set up VNC server with resumable sessions Outdated Tutorials & Tips
HOWTO: Set up VNC server with resumable sessions
Warning!
This howto is old, unsupported, and relies on a broken package. This should be used as reference only.
So here's the complete list of steps that are required to set the VNC server that any user can login into and start a session. It is also persistent, meanning that even if you disconnect the VNC client your X session will not end (unless you explicitly log out) and you can reconnect to the same session again. The VNC server uses a separate display (:1) than your regular X server, which works with your physical display (:0). So two sessions can be active at the same time (one person sitting at the physical display and another remotely connecting using VNC).
Note: Before doing the next step, you need to make sure the extra repositories (e.g. universe) are enabled:
http://easylinux.info/wiki/Ubuntu#Ho...a_repositories
Code:
sudo apt-get install vnc4server xinetd
Note to AMD64 users: The current version of vnc4server in the repositories has a bug, so you need to download and install the fixed vnc4 packages as shown below:
Code:
wget http://qt1.iq.usp.br/download/vnc4server_4.0-7.3_amd64.deb
wget http://qt1.iq.usp.br/download/xvnc4viewer_4.0-7.3_amd64.deb
sudo dpkg -i vnc4server_4.0-7.3_amd64.deb
sudo dpkg -i xvnc4viewer_4.0-7.3_amd64.deb
sudo vncpasswd /root/.vncpasswd
sudo gedit /etc/xinetd.d/Xvnc
Enter this into the new file:
Code:
service Xvnc
{
type = UNLISTED
disable = no
socket_type = stream
protocol = tcp
wait = yes
user = root
server = /usr/bin/Xvnc
server_args = -inetd :1 -query localhost -geometry 1024x768 -depth 16 -once -fp /usr/share/X11/fonts/misc -DisconnectClients=0 -NeverShared passwordFile=/root/.vncpasswd
port = 5901
}
Code:
sudo /etc/init.d/xinetd stop
sudo killall Xvnc
sudo /etc/init.d/xinetd start
Code:
vncviewer localhost:1
You should be prompted for the VNC password, and then see the GDM login screen where you can login and start a new X session. If that works, you can now go ahead and try to connect from remote machine using your favorite VNC client (remember to first close the local vncviewer we started above). Remember to use the VNC server machine's domain name or IP address, followed by :1 (e.g. 192.168.0.100:1). If connecting locally as shown above works, but connecting remotely fails, then this means you have a problem with a firewall which is blocking some ports. See the notes below about how to deal with that.
Note about ports: The VNC server set up as shown uses TCP port 5901. If you are using firewall software (e.g. firestarter) on that machine, you need to allow incoming connections on this port. If you are using a router which assigns your machine a private address (e.g. 192.168.0.100) which is not accessible from the internet, then you need to forward TCP port 5901 from the router to this machine.
Note about security: This setup allows any user to start an X-session remotely by logging in using his regular password (after starting the VNC connection using the VNC password), so if the user disconnects without logging out, any other user which knows the VNC password can connect afterwards and resume the same session that the first user started. So if you do not want to log out before disconnecting, it's advisable to at least lock your VNC X-session screen. Also note that while a remote user is connected thru VNC, no other connection will be accepted. An idle VNC client will be disconnected after one hour, but this can be changed by using the "-IdleTimeout" option in the server_args line in /etc/xinetd.d/Xvnc. For example, you can add "-IdleTimeout 300" to change it to 5 minutes.