Skip to content

guacamole#

description:#

Guacamole is an application from Apache foundation which allows for a remote connection to other systems. It supports connection types SSH (SFTP), VNC and RDP. I have been using Putty forever and was easily converted. I was looking for something that was browser based, easy to install and manage and Guacamole fitted these requirements.

I use Traefik and Authelia in front of Guacomole to provide a trusted and secure 2FA frontend.

I elected to use the setup from oznu as it incorporates a postgress database to hold the user details for authentication.

guacamole image

source and credits: docker image - oznu/guacamole from Apache

usage#

Just open the browser link and login. You need to setup the connections initially and from there the going is easy and a pleasant experience.

dependencies#

preparation: create folders for persistent storage outside of the docker container.

  1. guacamole

installation#

create a stack in Portainer with the following code.

 version: '2'

 services:
   guacamole:
     container_name: guacamole
     image: oznu/guacamole
     restart: unless-stopped
     networks:
       - web
     volumes:
       - /var/lib/docker/volumes/myconfigs/_data/guacamole:/config
     labels:
       - traefik.enable=true
       - traefik.http.routers.guacamole.rule=Host(`guacamole.example.com`)
       - traefik.http.routers.guacamole.entrypoints=websecure
       - traefik.http.routers.guacamole.middlewares=authelia@docker
       - traefik.http.routers.guacamole.tls=true
       - traefik.http.routers.guacamole.tls.certresolver=le

 networks:
     web:
         external:
           name: web

tips#