Hello Tifaine, you don't need to make two volumes. You need only the volume for guacamole home, then into the "real" directory you create the "extensions" subdir, and that's all.
root@it-net-guacamole:/opt/guacamole-docker# ls -ln guacamole-home/ total 8 drwxr-xr-x 2 0 0 4096 Jul 6 2022 extensions -rw-r--r-- 1 0 0 459 May 18 2022 guacamole.properties You may need to chown the "real" guacamole home directory to the same UID and GID of the user running guacamole inside the docker container (but, as you can see, I didn't need to do this, as those files are only read by guacamole client, I believe). In any case, the UID of the user running tomcat into the guacamole client container is 1000 (I am still using the guacamole 1.4.0 image but I think the UID has been preserved in the newer image). HTH Best regards. Lorenzo Da: Tifaine RIVOIRE OPTI Sécurité <[email protected]> Inviato: mercoledì 23 agosto 2023 12:03 A: [email protected] Oggetto: RE: activate extensions with docker-compose Hi ty for your answers, First, I upgrade Guacamole to 1.5.3 where history-recording bug is fixed. Then, I tried your solution and I think I'm not far. I first create the volume with my guacamole home and it works well. Next, I create the volume for the directory extension but my container always crash. In the docker logs I can see "'/home/guacamole/.guacamole/extensions': Permission denied" The directory belongs to guacamole user and I'm working with root and my attempts to change user didn't work. Is it possible to force docker-compose to use guacamole user ? -- T. RIVOIRE De : MAURIZI Lorenzo <[email protected]<mailto:[email protected]>> Envoyé : mercredi 23 août 2023 09:46 À : [email protected]<mailto:[email protected]> Objet : R: activate extensions with docker-compose Hi Tifaine, is the guacamole-home directory set as a persistent volume in the docker command line? This is my setup, I use docker compose plugin. In my docker-compose.yml file I added a volume volumes: - ${PWD}/guacamole-home:/guacamole-home Then in my ${PWD} I created a guacamole-home subdir, and into it I created another subdir "extensions" and put my branding jar into this subdir. In this way the content of this subdir is persistent. I used this directory also for the TOTP plugin before discovering that it could be activated with a simple environment variable (thanks to Nick Couchman for the help given). HTH Best regards. Lorenzo Da: Tifaine RIVOIRE OPTI Sécurité <[email protected]<mailto:[email protected]>> Inviato: mercoledì 23 agosto 2023 09:26 A: [email protected]<mailto:[email protected]> Oggetto: activate extensions with docker-compose Hi all, I want to customize my Guacamole main page. I've found an easy extension for doing it : https://github.com/Zer0CoolX/guacamole-customize-loginscreen-extension Like in the tutorial, I have copied the .jar file in the extensions directory. After a restart nothing happens. I'm using Guacamole via Docker. It seems that my extensions are only working when they are specified in my docker-compose and not when I just place them in extensions directory. I already got this issue with totp extension where I need to add this lines for extensions to work : guacamole: container_name: guacamole_compose environment: ACCEPT_EULA: "Y" EXTENSIONS: "auth-ldap,auth-totp,history-recording-storage" It seems that add auth-ldap and auth-totp in line EXTENSIONS allow extensions to work. It automatically place the .jar file on startup in /home/guacamole/.guacamole/extensions and extensions are working well. I have made some tests, adding branding in line EXTENSIONS, but nothing happens. I got the same problem with history-recording-storage which is not working. For example, with : EXTENSIONS: "auth-ldap,auth-totp,history-recording-storage,branding" Got only this two extensions enabled : /home/guacamole/.guacamole/extensions# ls guacamole-auth-jdbc-postgresql-1.5.2.jar guacamole-auth-ldap-1.5.2.jar If I place manually the extensions in the directory, after a reboot, branding.jar disappear. I find out that there is symbolic links from extensions directory to my guacamole home directory. /home/guacamole/.guacamole/extensions# ls -l total 4 lrwxrwxrwx 1 guacamole guacamole 66 Aug 23 07:19 guacamole-auth-jdbc-postgresql-1.5.2.jar -> /opt/guacamole/postgresql/guacamole-auth-jdbc-postgresql-1.5.2.jar lrwxrwxrwx 1 guacamole guacamole 49 Aug 23 07:19 guacamole-auth-ldap-1.5.2.jar -> /opt/guacamole/ldap/guacamole-auth-ldap-1.5.2.jar I've tried to create a directory named branding in /opt/guacamole. I place my extension in it. Create a link between /opt/guacamole /branding/branding.jar and /home/guacamole/.guacamole/extensions/branding.jar. After reboot, branding extension still disappear... Do you have any idea ? -- T. RIVOIRE
