You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@guacamole.apache.org by "Nick Couchman (Jira)" <ji...@apache.org> on 2021/04/04 11:54:00 UTC

[jira] [Commented] (GUACAMOLE-1318) Mapping host folder to /root/.guacamole fails with rm error message

    [ https://issues.apache.org/jira/browse/GUACAMOLE-1318?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17314476#comment-17314476 ] 

Nick Couchman commented on GUACAMOLE-1318:
------------------------------------------

I suspect the issue, here, is that the Guacamole Client startup script tries to clean up the GUACAMOLE_HOME folder during startup:

{code:sh}
#
# Start with a fresh GUACAMOLE_HOME
#


rm -Rf "$GUACAMOLE_HOME"
{code}

As you're passing through the volume, Docker isn't allowing the directory to be removed, so it's failing with this error. However, the script takes whatever you feed to it for GUACAMOLE_HOME and copies that into this directory:

{code:sh}


GUACAMOLE_HOME_TEMPLATE="$GUACAMOLE_HOME"
...
#
# Copy contents of provided GUACAMOLE_HOME template, if any
#


if [ -n "$GUACAMOLE_HOME_TEMPLATE" ]; then
    cp -a "$GUACAMOLE_HOME_TEMPLATE/." "$GUACAMOLE_HOME/"
fi
{code}

So, I'd suggest that, instead of passing through this volume directly at that path, that you try to pass this through volume and the GUACAMOLE_HOME variable to the container at another path (e.g. /tmp/guacamole_home) and allow the script to copy things over.

> Mapping host folder to /root/.guacamole fails with rm error message
> -------------------------------------------------------------------
>
>                 Key: GUACAMOLE-1318
>                 URL: https://issues.apache.org/jira/browse/GUACAMOLE-1318
>             Project: Guacamole
>          Issue Type: Bug
>          Components: guacamole-docker
>    Affects Versions: 1.3.0
>         Environment: QNAP QTS 4.5.2.1594
> [~] # docker version
> Client:
>  Version:           20.10.3
>  API version:       1.41
>  Go version:        go1.13.15
>  Git commit:        c52c09e6b8
>  Built:             Fri Feb 26 03:34:21 2021
>  OS/Arch:           linux/amd64
>  Context:           default
>  Experimental:      true
> Server:
>  Engine:
>   Version:          20.10.3
>   API version:      1.41 (minimum version 1.12)
>   Go version:       go1.13.15
>   Git commit:       4c417df92a
>   Built:            Fri Feb 26 04:02:45 2021
>   OS/Arch:          linux/amd64
>   Experimental:     false
>  containerd:
>   Version:          v1.4.3
>   GitCommit:        269548fa27e0089a8b8278fc4fc781d7f65a939b
>  runc:
>   Version:          1.0.0-rc93
>   GitCommit:        12644e614e25b05da6fd08a38ffa0cfe1903fdec
>  docker-init:
>   Version:          0.19.0
>   GitCommit:        de40ad0
>            Reporter: Oyvind Overby
>            Priority: Minor
>              Labels: newbie
>
> Attempts to map a host folder to the internal container folder
> {noformat}
> /root/.guacamole{noformat}
> fails with the following error message: 
> {noformat}
> rm: cannot remove '/root/.guacamole': Device or resource busy{noformat}
> We have tried to create the instance with guacamole/guacamole and guacamole/quadc on several different host computers using both Docker run, Docker Compose as well as Portainer. The result is always the same error message.
> Using ozru/guacamole image works, so we assume there is a bug in the guacamole/guacamole cotainer image.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)