A step by step tutorial on how to install apache guacamole on a cloud hosted linux ubuntu 20.04 LTS server


In this tutorial, you will learn how to install the Apache Guacamole system on a cloud hosted Linux Ubuntu server. For this demonstration we’ll use the Portainer container management system. Apache Guacamole is a clientless remote desktop gateway. It supports standard protocols like VNC, RDP, and SSH. It is a clientless web based system because no plugins or client software are required. Thanks to HTML5, once Guacamole is installed on a server, all you need to access your desktops is a web browser. Desktops accessed through Guacamole dont need to physically exist. With both Guacamole and a desktop operating system hosted in the cloud, you can combine the convenience of Guacamole with the resilience and flexibility of cloud computing. Apache Guacamole will always be free a and open source software. It is licensed under the Apache License, Version 2.0, and is actively maintained by a community of developers that use Guacamole to access their own development environments. Watch this tutorial right upto the end to learn how to quickly set it up.


The following is a list of items that may be needed to complete this tutorial:
1) An SSH client such as Putty of the macOS / Linux Desktop terminal app
2) Docker, docker-compose and the Portainer container management system
3) The docker image for Apache Guacamole
4) An Amazon Web Services account with access rights to provision instances ( You can use any other VPS hosting service that you prefer )
5) A Linux Ubuntu 22.04 LTS instance


Below is an overview of the steps outlined in this tutorial:
1) Sign in to AWS and create a Linux Ubuntu 20.04 instance in the Lightsail service
2) Open an SSH connection to the instance and update the system repository
3) Install docker, docker-compose and deploy the Portainer container management system
4) Use Portainer to deploy Apache Guacamole
5) Access the Guacamole web-based interface

1. Sign in to AWS and create a Linux Ubuntu 20.04 instance in the Lightsail service.

Start the setup by signing into your Amazon Web Services account. Use the search box at the top of the main dashboard to search for Lightsail. Click on the returned Lightsail search result to open the app.

Please note that if you do not have an Amazon Web Services account, you can sign up for a free tier account HERE. If you prefer to use a different cloud provider simply skip to step 2.

On the Lightsail dashboard, click the Create Instance button to open the instance creation wizard.

Frequently asked questions

What is the difference between Apache Guacamole server and client?

Apache Guacamole consists of both a server and a client component, each with its own set of features and functions. The server component is responsible for providing the connection to the remote machines while the client component provides the user interface and other functions. The main difference between them is that the server handles all of the communication with the remote machines while the client handles all of user interactions with those machines. In short, Apache Guacamole provides an efficient way for users to access their remote systems from any device, regardless of location or platform.

What protocols does Apache Guacamole use?

Apache Guacamole uses a variety of protocols to facilitate secure connections, including SSH, VNC, and RDP.

Which is better Apache Guacamole or Chrome remote desktop?