mirror of
https://github.com/jwetzell/docker-guacamole.git
synced 2026-08-21 15:09:12 +00:00
Compare commits
25 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| f68cb42d2f | |||
| 0046b9f92a | |||
| 56d8f0a882 | |||
| ed49d82733 | |||
| eb2e007d31 | |||
| 9284e7ab3a | |||
| cb52162bfb | |||
| 0e6ea6c206 | |||
| b312a3eace | |||
| b00cb7a9f2 | |||
| 80044f54a7 | |||
| 6f62295c8b | |||
| 07290e82c8 | |||
| ecdf5c8137 | |||
| 7945b12de0 | |||
| ccd2ec594c | |||
| 28b82a68a8 | |||
| 87fd435aac | |||
| d7178feb80 | |||
| 54982f26f3 | |||
| 3cf4b6c741 | |||
| e27dedf9a8 | |||
| 248049dc38 | |||
| 6b8de99ece | |||
| 7adcd7f3dc |
@@ -0,0 +1,6 @@
|
|||||||
|
version: 2
|
||||||
|
updates:
|
||||||
|
- package-ecosystem: 'github-actions'
|
||||||
|
directory: '/'
|
||||||
|
schedule:
|
||||||
|
interval: 'weekly'
|
||||||
@@ -5,6 +5,8 @@ on:
|
|||||||
push:
|
push:
|
||||||
paths:
|
paths:
|
||||||
- 'Dockerfile.base'
|
- 'Dockerfile.base'
|
||||||
|
branches:
|
||||||
|
- 'master'
|
||||||
jobs:
|
jobs:
|
||||||
docker:
|
docker:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|||||||
+1
-1
@@ -52,7 +52,7 @@ RUN set -xe \
|
|||||||
|
|
||||||
# Add optional extensions
|
# Add optional extensions
|
||||||
RUN set -xe \
|
RUN set -xe \
|
||||||
&& for i in auth-duo auth-header auth-json auth-ldap auth-quickconnect auth-totp history-recording-storage; do \
|
&& for i in auth-ban auth-duo auth-header auth-json auth-ldap auth-quickconnect auth-totp auth-restrict history-recording-storage; do \
|
||||||
echo "https://archive.apache.org/dist/guacamole/${GUAC_VER}/binary/guacamole-${i}-${GUAC_VER}.tar.gz" \
|
echo "https://archive.apache.org/dist/guacamole/${GUAC_VER}/binary/guacamole-${i}-${GUAC_VER}.tar.gz" \
|
||||||
&& curl -SLO "https://archive.apache.org/dist/guacamole/${GUAC_VER}/binary/guacamole-${i}-${GUAC_VER}.tar.gz" \
|
&& curl -SLO "https://archive.apache.org/dist/guacamole/${GUAC_VER}/binary/guacamole-${i}-${GUAC_VER}.tar.gz" \
|
||||||
&& tar -xzf guacamole-${i}-${GUAC_VER}.tar.gz \
|
&& tar -xzf guacamole-${i}-${GUAC_VER}.tar.gz \
|
||||||
|
|||||||
+8
-7
@@ -1,14 +1,13 @@
|
|||||||
FROM tomcat:9.0.85-jre11
|
FROM tomcat:9.0.120-jdk17-temurin-noble
|
||||||
|
ARG TARGETPLATFORM
|
||||||
|
|
||||||
ENV GUAC_VER=1.5.5 \
|
ENV GUAC_VER=1.6.0 \
|
||||||
GUACAMOLE_HOME=/app/guacamole \
|
GUACAMOLE_HOME=/app/guacamole \
|
||||||
PG_VER=9.6.24 \
|
PG_VER=9.6.24 \
|
||||||
LIBSSH2_VER=1.11.0 \
|
LIBSSH2_VER=1.11.0 \
|
||||||
PGDATA=/config/postgres \
|
PGDATA=/config/postgres \
|
||||||
POSTGRES_USER=guacamole \
|
POSTGRES_USER=guacamole \
|
||||||
POSTGRES_DB=guacamole_db
|
POSTGRES_DB=guacamole_db
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# Add user for postgres
|
# Add user for postgres
|
||||||
RUN useradd postgres
|
RUN useradd postgres
|
||||||
@@ -16,8 +15,10 @@ RUN useradd postgres
|
|||||||
# Cleanup default tomcat stuff
|
# Cleanup default tomcat stuff
|
||||||
RUN rm -rf /usr/local/tomcat/webapps.dist
|
RUN rm -rf /usr/local/tomcat/webapps.dist
|
||||||
|
|
||||||
|
RUN echo $TARGETPLATFORM
|
||||||
|
|
||||||
# Apply the s6-overlay
|
# Apply the s6-overlay
|
||||||
RUN if [ "$TARGETPLATFORM" = "linux/amd64" ]; then ARCHITECTURE=amd64; elif [ "$TARGETPLATFORM" = "linux/arm/v7" ]; then ARCHITECTURE=arm; elif [ "$TARGETPLATFORM" = "linux/arm64" ]; then ARCHITECTURE=aarch64; else ARCHITECTURE=amd64; fi \
|
RUN if [ "$TARGETPLATFORM" = "linux/amd64" ]; then ARCHITECTURE=amd64; elif [ "$TARGETPLATFORM" = "linux/arm/v7" ]; then ARCHITECTURE=armhf; elif [ "$TARGETPLATFORM" = "linux/arm/v8" ]; then ARCHITECTURE=aarch64; elif [ "$TARGETPLATFORM" = "linux/arm64" ]; then ARCHITECTURE=aarch64; fi \
|
||||||
&& curl -sS -L -O --output-dir /tmp/ --create-dirs "https://github.com/just-containers/s6-overlay/releases/download/v2.2.0.3/s6-overlay-${ARCHITECTURE}-installer" \
|
&& curl -sS -L -O --output-dir /tmp/ --create-dirs "https://github.com/just-containers/s6-overlay/releases/download/v2.2.0.3/s6-overlay-${ARCHITECTURE}-installer" \
|
||||||
&& chmod +x /tmp/s6-overlay-${ARCHITECTURE}-installer && /tmp/s6-overlay-${ARCHITECTURE}-installer / \
|
&& chmod +x /tmp/s6-overlay-${ARCHITECTURE}-installer && /tmp/s6-overlay-${ARCHITECTURE}-installer / \
|
||||||
&& rm -rf /tmp/s6-overlay-${ARCHITECTURE}-installer
|
&& rm -rf /tmp/s6-overlay-${ARCHITECTURE}-installer
|
||||||
@@ -32,7 +33,7 @@ RUN apt-get update \
|
|||||||
&& apt-get install -y curl ca-certificates gnupg \
|
&& apt-get install -y curl ca-certificates gnupg \
|
||||||
libcairo2-dev libjpeg-turbo8-dev libpng-dev libavformat-dev \
|
libcairo2-dev libjpeg-turbo8-dev libpng-dev libavformat-dev \
|
||||||
libossp-uuid-dev libavcodec-dev libavutil-dev \
|
libossp-uuid-dev libavcodec-dev libavutil-dev \
|
||||||
libswscale-dev freerdp2-dev libfreerdp-client2-2 libpango1.0-dev \
|
libswscale-dev freerdp2-dev libpango1.0-dev \
|
||||||
libtelnet-dev libvncserver-dev \
|
libtelnet-dev libvncserver-dev \
|
||||||
libpulse-dev libssl-dev libvorbis-dev libwebp-dev libwebsockets-dev \
|
libpulse-dev libssl-dev libvorbis-dev libwebp-dev libwebsockets-dev \
|
||||||
ghostscript build-essential libreadline-dev \
|
ghostscript build-essential libreadline-dev \
|
||||||
@@ -57,4 +58,4 @@ RUN tar -xzvf /tmp/postgresql-${PG_VER}.tar.gz \
|
|||||||
&& ./configure \
|
&& ./configure \
|
||||||
&& make \
|
&& make \
|
||||||
&& make install \
|
&& make install \
|
||||||
&& rm -rf /tmp/postgresql-${PG_VER}*
|
&& rm -rf /tmp/postgresql-${PG_VER}*
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ This container runs the guacamole web client, the guacd server and a postgres da
|
|||||||
docker run \
|
docker run \
|
||||||
-p 8080:8080 \
|
-p 8080:8080 \
|
||||||
-v </path/to/config>:/config \
|
-v </path/to/config>:/config \
|
||||||
jwetzell/guacamole
|
jwetzell/guacamole:1.6.0-20250711
|
||||||
```
|
```
|
||||||
|
|
||||||
## Raspberry Pi / ARMv7
|
## Raspberry Pi / ARMv7
|
||||||
@@ -29,7 +29,7 @@ Now that the image has been converted to a multi-platform image the command for
|
|||||||
docker run \
|
docker run \
|
||||||
-p 8080:8080 \
|
-p 8080:8080 \
|
||||||
-v </path/to/config>:/config \
|
-v </path/to/config>:/config \
|
||||||
jwetzell/guacamole
|
jwetzell/guacamole:1.6.0-20250711
|
||||||
```
|
```
|
||||||
|
|
||||||
## Parameters
|
## Parameters
|
||||||
@@ -51,22 +51,21 @@ docker run \
|
|||||||
-p 8080:8080 \
|
-p 8080:8080 \
|
||||||
-v </path/to/config>:/config \
|
-v </path/to/config>:/config \
|
||||||
-e "EXTENSIONS=auth-ldap,auth-duo"
|
-e "EXTENSIONS=auth-ldap,auth-duo"
|
||||||
jwetzell/guacamole
|
jwetzell/guacamole:1.6.0-20250711
|
||||||
```
|
```
|
||||||
|
|
||||||
Currently the available extensions are:
|
Currently the available extensions are:
|
||||||
|
|
||||||
|
* auth-ban - [Blocking brute-force attacks](https://guacamole.apache.org/doc/gug/auth-ban.html)
|
||||||
* auth-duo - [Duo two-factor authentication](https://guacamole.apache.org/doc/gug/duo-auth.html)
|
* auth-duo - [Duo two-factor authentication](https://guacamole.apache.org/doc/gug/duo-auth.html)
|
||||||
* auth-header - [HTTP header authentication](https://guacamole.apache.org/doc/gug/header-auth.html)
|
* auth-header - [HTTP header authentication](https://guacamole.apache.org/doc/gug/header-auth.html)
|
||||||
* auth-jdbc-mysql - [MySQL Authentication](https://guacamole.apache.org/doc/gug/jdbc-auth.html)
|
|
||||||
* auth-jdbc-postgresql - [PostgreSQL Authentication](https://guacamole.apache.org/doc/gug/jdbc-auth.html)
|
|
||||||
* auth-jdbc-sqlserver - [SQL Server Authentication](https://guacamole.apache.org/doc/gug/jdbc-auth.html)
|
|
||||||
* auth-json - [Encrypted JSON Authentication](https://guacamole.apache.org/doc/gug/json-auth.html)
|
* auth-json - [Encrypted JSON Authentication](https://guacamole.apache.org/doc/gug/json-auth.html)
|
||||||
* auth-ldap - [LDAP Authentication](https://guacamole.apache.org/doc/gug/ldap-auth.html)
|
* auth-ldap - [LDAP Authentication](https://guacamole.apache.org/doc/gug/ldap-auth.html)
|
||||||
* auth-quickconnect - [Ad-hoc connections extension](https://guacamole.apache.org/doc/gug/adhoc-connections.html)
|
* auth-quickconnect - [Ad-hoc connections extension](https://guacamole.apache.org/doc/gug/adhoc-connections.html)
|
||||||
* auth-sso-cas - [CAS Authentication](https://guacamole.apache.org/doc/gug/cas-auth.html)
|
* auth-sso-cas - [CAS Authentication](https://guacamole.apache.org/doc/gug/cas-auth.html)
|
||||||
* auth-sso-openid - [OpenID Authentication](https://guacamole.apache.org/doc/gug/openid-auth.html)
|
* auth-sso-openid - [OpenID Authentication](https://guacamole.apache.org/doc/gug/openid-auth.html)
|
||||||
* auth-sso-saml - [SAML Authentication](https://guacamole.apache.org/doc/gug/saml-auth.html)
|
* auth-sso-saml - [SAML Authentication](https://guacamole.apache.org/doc/gug/saml-auth.html)
|
||||||
|
* auth-restrict - [Login / Connection restrictions](https://guacamole.apache.org/doc/gug/auth-restrict.html)
|
||||||
* auth-totp - [TOTP two-factor authentication](https://guacamole.apache.org/doc/gug/totp-auth.html)
|
* auth-totp - [TOTP two-factor authentication](https://guacamole.apache.org/doc/gug/totp-auth.html)
|
||||||
* history-recording-storage - [Session Recording Playback](https://guacamole.apache.org/doc/gug/recording-playback.html#)
|
* history-recording-storage - [Session Recording Playback](https://guacamole.apache.org/doc/gug/recording-playback.html#)
|
||||||
* vault - [Retrieving secrets from a vault](https://guacamole.apache.org/doc/gug/vault.html)
|
* vault - [Retrieving secrets from a vault](https://guacamole.apache.org/doc/gug/vault.html)
|
||||||
@@ -85,7 +84,7 @@ Mapped volumes behave differently when running Docker for Windows and you may en
|
|||||||
version: "2"
|
version: "2"
|
||||||
services:
|
services:
|
||||||
guacamole:
|
guacamole:
|
||||||
image: jwetzell/guacamole
|
image: jwetzell/guacamole:1.6.0-20250711
|
||||||
container_name: guacamole
|
container_name: guacamole
|
||||||
volumes:
|
volumes:
|
||||||
- postgres:/config
|
- postgres:/config
|
||||||
|
|||||||
Reference in New Issue
Block a user