Sign inSign up

1889429/guacamole

By 1889429

Updated 2 days ago

Patched Apache Guacamole 1.6.0 running on Tomcat 10.1 (Jakarta EE 10) for linux/amd64.

Image
Networking
Developer tools
Web servers
0

49

1889429/guacamole repository overview

Apache Guacamole 1.6.0 (Tomcat 10 / Jakarta EE Patched)

Custom build of Apache Guacamole 1.6.0 updated to run on Apache Tomcat 10.1 (Eclipse Temurin JRE 17).

This image converts Guacamole's native javax.servlet packages to jakarta.servlet using the Apache Tomcat Jakarta EE Migration Tool, completely remediating legacy Tomcat 9.0.x vulnerabilities.


🏷️ Tag Information

  • 1.6.0-tomcat10, latest
    • Architecture: linux/amd64
    • Base Image: tomcat:10.1-jre17-temurin
    • Servlet Engine: Jakarta EE 10 (jakarta.servlet)

🚀 Quick Start

1. Standard Docker Run
docker run -d \
  --name guacamole \
  -p 8080:8080 \
  -e GUACAMOLE_HOME=/etc/guacamole \
  -e POSTGRES_HOSTNAME=postgres-db \
  -e POSTGRES_DATABASE=guacamole_db \
  -e POSTGRES_USER=guacamole_user \
  -e POSTGRES_PASSWORD=your_secure_password \
  repository.ncr.ntnu.no/internal/guacamole:1.6.0-tomcat10

2. Docker Compose Example
version: '3.8'

services:
  guacd:
    image: guacamole/guacd:1.6.0
    restart: always

  guacamole:
    image: repository.ncr.ntnu.no/internal/guacamole:1.6.0-tomcat10
    restart: always
    ports:
      - "8080:8080"
    environment:
      GUACD_HOSTNAME: guacd
      GUACD_PORT: 4822
      POSTGRES_HOSTNAME: postgres
      POSTGRES_DATABASE: guacamole_db
      POSTGRES_USER: guacamole_user
      POSTGRES_PASSWORD_FILE: /run/secrets/guac_db_pass
      ENABLE_FILE_ENVIRONMENT_PROPERTIES: "true"
    secrets:
      - guac_db_pass
    depends_on:
      - guacd
      - postgres

  postgres:
    image: postgres:16-alpine
    restart: always
    environment:
      POSTGRES_DB: guacamole_db
      POSTGRES_USER: guacamole_user
      POSTGRES_PASSWORD_FILE: /run/secrets/guac_db_pass
    secrets:
      - guac_db_pass
    volumes:
      - guac_db_data:/var/lib/postgresql/data

secrets:
  guac_db_pass:
    file: ./postgres_password.txt

volumes:
  guac_db_data:

⚙️ Environment Variables

VariableDefaultDescription
GUACD_HOSTNAMElocalhostHostname/IP of the guacd proxy daemon
GUACD_PORT4822Port of the guacd proxy daemon
POSTGRES_HOSTNAMEPostgreSQL database server hostname
POSTGRES_DATABASEPostgreSQL database name
MYSQL_HOSTNAMEMySQL database server hostname
MSSQL_HOSTNAMEMSSQL database server hostname
ENABLE_FILE_ENVIRONMENT_PROPERTIEStrueAllows reading database passwords from _FILE environment secrets
BAN_ENABLEDtrueEnables brute-force authentication ban protection

🔒 Security & Remediation Details

  • Runtime: Upgraded from Tomcat 9.0.106 to 10.1.x.
  • Database Drivers: Updated JDBC drivers for PostgreSQL, MySQL, and MSSQL to patched versions.
  • OS Packages: Base OS dependencies patched via apt-get upgrade in final stage.
  • Bytecode Transformation: Automated shaded jakartaee-migration execution during multi-stage build.

📄 License

Licensed under the Apache License, Version 2.0.

Tag summary

Content type

Image

Digest

sha256:bf18913ba

Size

289 MB

Last updated

2 days ago

docker pull 1889429/guacamole:1.6.0-tomcat10