Repository: incubator-guacamole-manual
Updated Branches:
  refs/heads/master d9e16c653 -> 431038c96


GUACAMOLE-100: Document using arbitary Guacamole extensions with Docker.


Project: http://git-wip-us.apache.org/repos/asf/incubator-guacamole-manual/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-guacamole-manual/commit/f2e5fffd
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-guacamole-manual/tree/f2e5fffd
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-guacamole-manual/diff/f2e5fffd

Branch: refs/heads/master
Commit: f2e5fffd9639cc1c3993f522efd2da27e3c10dd4
Parents: 4c58641
Author: Michael Jumper <[email protected]>
Authored: Sat Jan 21 23:21:37 2017 -0800
Committer: Michael Jumper <[email protected]>
Committed: Sun Jan 22 15:34:50 2017 -0800

----------------------------------------------------------------------
 src/chapters/docker.xml | 56 ++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 56 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-guacamole-manual/blob/f2e5fffd/src/chapters/docker.xml
----------------------------------------------------------------------
diff --git a/src/chapters/docker.xml b/src/chapters/docker.xml
index da1b905..c58cee8 100644
--- a/src/chapters/docker.xml
+++ b/src/chapters/docker.xml
@@ -811,6 +811,62 @@
                     configured to use each when the Docker image starts.</para>
             </section>
         </section>
+        <section xml:id="guacamole-docker-guacamole-home">
+            <title>Custom extensions and <envar>GUACAMOLE_HOME</envar></title>
+            <para>If you have your own or third-party extensions for Guacamole 
which are not
+                supported by the Guacamole Docker image, but are compatible 
with the version of
+                Guacamole within the image, you can still use them by 
providing a custom base
+                configuration using the <envar>GUACAMOLE_HOME</envar> 
environment variable:</para>
+            <informaltable frame="all">
+                <tgroup cols="2">
+                    <colspec colname="c1" colnum="1" colwidth="1*"/>
+                    <colspec colname="c2" colnum="2" colwidth="4*"/>
+                    <thead>
+                        <row>
+                            <entry>Variable</entry>
+                            <entry>Description</entry>
+                        </row>
+                    </thead>
+                    <tbody>
+                        <row>
+                            <entry><envar>GUACAMOLE_HOME</envar></entry>
+                            <entry>
+                                <para>The absolute path to the directory 
within the Docker container
+                                    to use <emphasis>as a template</emphasis> 
for the image's
+                                    automatically-generated <link
+                                        
xmlns:xlink="http://www.w3.org/1999/xlink";
+                                        linkend="guacamole-home"
+                                        ><envar>GUACAMOLE_HOME</envar></link>. 
Any configuration
+                                    generated by the Guacamole Docker image 
based on other
+                                    environment variables will be applied to 
an independent copy of
+                                    the contents of this directory.</para>
+                            </entry>
+                        </row>
+                    </tbody>
+                </tgroup>
+            </informaltable>
+            <para>You will <emphasis>still</emphasis> need to follow the steps 
required to create
+                the contents of <link 
xmlns:xlink="http://www.w3.org/1999/xlink";
+                    
linkend="guacamole-home"><envar>GUACAMOLE_HOME</envar></link> specific to your
+                extension (placing the extension itself within
+                        
<filename><replaceable>GUACAMOLE_HOME</replaceable>/extensions/</filename>,
+                adding any properties to 
<filename>guacamole.properties</filename>, etc.), but the
+                rest of Guacamole's configuration will be handled 
automatically, overlaid on top of
+                a copy of the <envar>GUACAMOLE_HOME</envar> you provide.</para>
+            <para>Because the Docker image's <envar>GUACAMOLE_HOME</envar> 
environment variable must
+                point to a directory <emphasis>within the 
container</emphasis>, you will need to
+                expose your custom <envar>GUACAMOLE_HOME</envar> to the 
container using the
+                    <option>-v</option> option of <command>docker 
run</command>. The container
+                directory chosen can then be referenced in the 
<envar>GUACAMOLE_HOME</envar>
+                environment variable, and the image will handle the rest 
automatically:</para>
+            <informalexample>
+                <screen><prompt>$</prompt> <command>docker</command> run 
--name <replaceable>some-guacamole</replaceable>    \
+    ...
+    <emphasis>-v 
<replaceable>/local/path</replaceable>:<replaceable>/some-directory</replaceable>
   \
+    -e GUACAMOLE_HOME=<replaceable>/some-directory</replaceable> \</emphasis>
+    -d -p 8080:8080 guacamole/guacamole</screen>
+            </informalexample>
+        </section>
         <section xml:id="verifying-guacamole-docker">
             <title>Verifying the Guacamole install</title>
             <para>Once the Guacamole image is running, Guacamole should be 
accessible at

Reply via email to