From 72faca1a3a81b6104c776353ee7b4dc03d6ae9be Mon Sep 17 00:00:00 2001 From: Nate Coraor Date: Wed, 18 Nov 2015 14:15:40 -0500 Subject: [PATCH] Document GIE proxy config for nginx, mention the Ansible role. --- doc/source/admin/interactive_environments.rst | 34 ++++++++++++++++--- 1 file changed, 30 insertions(+), 4 deletions(-) diff --git a/doc/source/admin/interactive_environments.rst b/doc/source/admin/interactive_environments.rst index 8d7821babcb..e1da51643cf 100644 --- a/doc/source/admin/interactive_environments.rst +++ b/doc/source/admin/interactive_environments.rst @@ -31,6 +31,11 @@ numerous services, you'll need to be a fairly competent SysAdmin to debug all of the possible problems that can occur during deployment. After the initial hurdle, most find that GIEs require little to no maintenance. +An `Ansible `__ role for installing and managing GIEs +can be found on +`Github `__ +and `Ansible Galaxy `__. + Setting up the Proxy ^^^^^^^^^^^^^^^^^^^^ @@ -123,7 +128,7 @@ to Galaxy. You will need to add special upstream proxy configuration to handle this, and you'll need to use the same ``dynamic_proxy_prefix`` in your ``galaxy.ini`` that you use in your URL routes. -Apache +**Apache** .. code-block:: apache @@ -140,12 +145,33 @@ Apache Please note you will need to be using apache2.4 with ``mod_proxy_wstunnel``. -Nginx +**Nginx** -.. code-block:: +.. code-block:: nginx - # TODO, please PR / ping erasche on IRC if you have samples + # Global GIE configuration + location /galaxy/gie_proxy { + proxy_pass http://localhost:8800/galaxy/gie_proxy; + proxy_redirect off; + } + # IPython specific. Other IEs may require their own routes. + location /galaxy/gie_proxy/ipython/api/kernels { + proxy_pass http://localhost:8800/galaxy/gie_proxy/ipython/api/kernels; + proxy_redirect off; + proxy_http_version 1.1; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection "upgrade"; + } + +If you proxy static content, you may find the following rule useful for +proxying to GIE and other visualization plugin static content. + +.. code-block:: nginx + + location ~ ^/plugins/(?.+?)/(?.+?)/static/(?.*?)$ { + alias /path/to/galaxy-dist/config/plugins/$plug_type/$vis_name/static/$static_file; + } Docker on Another Host ^^^^^^^^^^^^^^^^^^^^^^