docker run -p 8080:8080 -v /tmp:/config oznu/guacamole
extensions are really useful for more security, ldap auth idk
docker run \
-p 8080:8080 \
-v </path/to/config>:/config \
oznu/guacamole
This image will also allow you to run Apache Guacamole on a Raspberry Pi or other Docker-enabled ARMv5/6/7/8 devices by using the armhf
tag.
docker run \
-p 8080:8080 \
-v </path/to/config>:/config \
oznu/guacamole:armhf
The parameters are split into two halves, separated by a colon, the left hand side representing the host and the right the container side.
-p 8080:8080
- Binds the service to port 8080 on the Docker host, required-v /config
- The config and database location, required-e EXTENSIONS
- See below for details.
Extensions can be enabled using the -e EXTENSIONS
variable. Multiple extensions can be enabled using a comma separated list without spaces.
For example:
docker run \
-p 8080:8080 \
-v </path/to/config>:/config \
-e "EXTENSIONS=auth-ldap,auth-duo"
oznu/guacamole
Currently the available extensions are:
- auth-ldap - LDAP Authentication
- auth-duo - Duo two-factor authentication
- auth-header - HTTP header authentication
- auth-cas - CAS Authentication
- auth-openid - OpenID Connect authentication
- auth-totp - TOTP two-factor authentication
You should only enable the extensions you require, if an extensions is not configured correctly in the guacamole.properties
file it may prevent the system from loading. See the official documentation for more details.
The default username is guacadmin
with password guacadmin
.
Mapped volumes behave differently when running Docker for Windows and you may encounter some issues with PostgreSQL file system permissions. To avoid these issues, and still retain your config between container upgrades and recreation, you can use the local volume driver, as shown in the docker-compose.yml
example below. When using this setup be careful to gracefully stop the container or data may be lost.
version: "2"
services:
guacamole:
image: oznu/guacamole
container_name: guacamole
volumes:
- postgres:/config
ports:
- 8080:8080
volumes:
postgres:
driver: local