HI I initially set up Guacamole as follows:
The IP of my docker server is 192.168.10.11 Step 1:sudo docker run --name my-guacd -d guacamole/guacd Step 2:sudo docker run --name quacamole-mysql -e MYSQL_ROOT_PASSWORD=sqlpassword -d --restart unless-stopped mysql:latest Step 3:sudo docker exec -it guacamole-mysql /bin/bash mysql -u root -p CREATE DATABASE guacamole_db; CREATE USER 'guacamole_user'@'%' IDENTIFIED BY 'guacamopwd'; GRANT ALL PRIVILEGES ON guacamole_db.* TO 'guacamole_user'@'%'; FLUSH PRIVILEGES; Exit out of the mysql docker Step 4: sudo docker run --rm guacamole/guacamole /opt/guacamole/bin/initdb.sh --mysql > initdb.sql sudo cat initdb.sql | sudo docker exec -i guacamole-mysql /usr/bin/mysql -u guacamole_user -pguacamopwd -D guacamole_db Step 5: sudo docker run --name my-guacamole \ --link my-guacd:guacd \ --link guacamole-mysql:mysql \ -e WEBAPP_CONTEXT=ROOT \ -e MYSQL_HOSTNAME=192.168.10.11 \ -e MYSQL_DATABASE=guacamole_db \ -e MYSQL_USER=guacamole_user \ -e MYSQL_PASSWORD=pguacamopwd\ -e TOTP_ENABLED=true \ --restart unless-stopped \ -d -p 8080:8080 guacamole/guacamole Whenever my portainer VM rebooted, Guacamole would not restart. I therefore removed quacd are redeployed with --restart always. I did the same for guacamole. When I then tried to access the guacamole portal, I got an error. "An error has occurred and this action cannot be completed. If the problem persists, please notify your system administrator or check your system logs." The logs said, " Loading class `com.mysql.jdbc.Driver'. This is deprecated. The new driver class is `com.mysql.cj.jdbc.Driver'. The driver is automatically registered via the SPI and manual loading of the driver class is generally unnecessary. 09:01:52.386 [http-nio-8080-exec-6] WARN o.a.g.e.AuthenticationProviderFacade - The "mysql" authentication provider has encountered an internal error which will halt the authentication process. If this is unexpected or you are the developer of this authentication provider, you may wish to enable debug-level logging. If this is expected and you wish to ignore such failures in the future, please set "skip-if-unavailable: mysql" within your guacamole.properties. 09:01:52.398 [http-nio-8080-exec-6] ERROR o.a.g.rest.RESTExceptionMapper - Unexpected internal error: ### Error querying database. Cause: java.sql.SQLException: Access denied for user 'guacamole_user'@'172.17.0.7' (using password: YES) ### The error may exist in org/apache/guacamole/auth/jdbc/user/UserMapper.xml ### The error may involve org.apache.guacamole.auth.jdbc.user.UserMapper.selectOne ### The error occurred while executing a query ### Cause: java.sql.SQLException: Access denied for user 'guacamole_user'@'172.17.0.7' (using password: YES) " I tried re-executing sudo docker run --rm guacamole/guacamole /opt/guacamole/bin/initdb.sh --mysql > initdb.sql sudo cat initdb.sql | sudo docker exec -i guacamole-mysql /usr/bin/mysql -u guacamole_user -pguacamopwd -D guacamole_db But got "Table 'guacamole_connection_group' already exists" when running the second line. I have confirmed that my sql username and password are correct. What have I done wrong? André Basel
