Introduction
The self-hosted Guacamole Docker app runs Apache Guacamole in containers using Docker.
Guacamole is a clientless remote desktop gateway – meaning you can access desktops and servers through a web browser without needing special client software. It supports common protocols like:
-
RDP (Remote Desktop Protocol, Windows)
-
VNC (Virtual Network Computing, Linux/Unix GUI)
-
SSH (command line access)
Instead of installing separate clients, you log into Guacamole via a web UI, and it acts as the bridge.
How the Docker setup works
The Guacamole project provides official Docker images that let you self-host it easily:
-
guacd
– the Guacamole proxy daemon that handles protocol connections (RDP, VNC, SSH). -
guacamole
– the web application that users log into. -
Database container (MariaDB or PostgreSQL) – stores user accounts, permissions, and connection settings.
These run together, typically via docker-compose
.