SequenceTubeMap-Sapelo2: Difference between revisions

From Research Computing Center Wiki
Jump to navigation Jump to search
(Changed "Example Usage" section from "Sub-heading 2" to "Sub-heading 1".)
m (Made a note that SSH tunneling may cause the terminal to appear frozen.)
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
[[Category:Sapelo2]][[Category:Software]][[Category:Bioinformatics]]
=== Category ===
=== Category ===
Bioinformatics
Bioinformatics
Line 15: Line 16:


=== Running Program ===
=== Running Program ===
This program, like other should '''not''' be run on a submit node (''ss-sub2, ss-sub3, ss-sub4, etc''). Instead, <u>run this program from within an interactive session</u>, which can be entered using the following command on a submit node:<syntaxhighlight lang="bash">
This program, like others, should '''not''' be run on a submit node (''ss-sub2, ss-sub3, ss-sub4, etc''.). Instead, <u>run this program from within an interactive session</u>, which can be entered using the following command on a submit node:<syntaxhighlight lang="bash">
interact
interact
</syntaxhighlight>
</syntaxhighlight>
Line 29: Line 30:


==== Starting the server ====
==== Starting the server ====
Starting the program is as simple as setting the environment variables that define the port and data to, and running the server. '''Make sure to pass the <u>absolute path</u> to your data.'''<syntaxhighlight lang="bash">
Starting the program is as simple as defining the port and data path in environment variables and running the server. '''Make sure to provide the <u>absolute path</u> of your data.'''<syntaxhighlight lang="bash">
export SERVER_PORT=<port>; export MOUNTED_DATA_PATH=<data_path>; sequenceTubeMap
export SERVER_PORT=<port>; export MOUNTED_DATA_PATH=<data_path>; sequenceTubeMap
</syntaxhighlight>
</syntaxhighlight>
Line 35: Line 36:
==== Configure SSH Tunnel ====
==== Configure SSH Tunnel ====
It will be necessary to use SSH tunneling to connect to the web frontend from within a web browser. Please note that '''this step is to be performed on your local computer'''. It is recommended to setup the SSH tunnel from a new, separate terminal.  
It will be necessary to use SSH tunneling to connect to the web frontend from within a web browser. Please note that '''this step is to be performed on your local computer'''. It is recommended to setup the SSH tunnel from a new, separate terminal.  
'''<u>Note:</u>''' Successfully creating an SSH tunnel at the command line may cause the terminal to seem as though it froze or hung with no response, which is the expected behavior.


===== SSH Tunneling from Mac or Linux =====
===== SSH Tunneling from Mac or Linux =====
From your local terminal, issue the following command while making sure to replace '''HOST''' with the actual IP address obtained in the previous step and '''MyID''' with your actual MyID:<syntaxhighlight lang="bash">
From your local terminal, issue the following command while making sure to replace '''HOST''' with the actual IP address obtained in the previous step, '''PORT''' with the port number used, and '''MyID''' with your UGA MyID:<syntaxhighlight lang="bash">
ssh -N -L PORT:HOST:PORT MyID@sapelo2.gacrc.uga.edu
ssh -N -L PORT:HOST:PORT MyID@sapelo2.gacrc.uga.edu
</syntaxhighlight>
</syntaxhighlight>
Line 43: Line 46:
===== SSH Tunneling from Windows =====
===== SSH Tunneling from Windows =====


Download the '''[https://the.earth.li/~sgtatham/putty/latest/x86/plink.exe plink program]''', open a command window--the current directory of this command window should contain the ''plink.exe'' file--and execute the following command, replacing '''HOST''' with the actual IP address obtained in the previous step and '''MyID''' with your actual MyID:<syntaxhighlight lang="powershell">
Download the '''[https://the.earth.li/~sgtatham/putty/latest/x86/plink.exe plink program]''', open a command window--the current directory of this command window should contain the ''plink.exe'' file--and execute the following command, replacing '''HOST''' with the actual IP address obtained in the previous step, '''PORT''' with the port number used, and '''MyID''' with your UGA MyID:<syntaxhighlight lang="powershell">
plink -ssh -N -L PORT:HOST:PORT MyID@sapelo2.gacrc.uga.edu
plink -ssh -N -L PORT:HOST:PORT MyID@sapelo2.gacrc.uga.edu
</syntaxhighlight>
</syntaxhighlight>


==== Connecting to the Server ====
==== Connecting to the Server ====
To connect to the server, simply open a web browser <u>on the computer connected to the SSH tunnel</u>, and navigate to [http://localhost:3000 http://localhost:PORT] in the URL bar, '''making sure to replace PORT with the actual port number used'''.
To connect to the server, simply open a web browser <u>on the computer connected to the SSH tunnel</u>, and navigate to [http://localhost:3000 http://localhost:PORT] in the URL bar, making sure to replace PORT with the actual port number used.


=== Example Usage ===
=== Example Usage ===
Line 58: Line 61:
</syntaxhighlight>Third, he would take note of the IP address of the server on which his interactive session is currently running:<syntaxhighlight lang="bash">
</syntaxhighlight>Third, he would take note of the IP address of the server on which his interactive session is currently running:<syntaxhighlight lang="bash">
hostname -i
hostname -i
</syntaxhighlight>If he has data in a directory at the file path, ''/home/itd72797/testData'', and would like to host it on port ''8972'', he would execute the following from within the same interactive session:<syntaxhighlight lang="bash">
</syntaxhighlight>If he has data in a directory at the file path ''/home/itd72797/testData'' and would like to host it on port ''8972'', he would execute the following from within the same interactive session:<syntaxhighlight lang="bash">
export SERVER_PORT=8972; export MOUNTED_DATA_PATH="/home/itd72797/testData"; sequenceTubeMap
export SERVER_PORT=8972; export MOUNTED_DATA_PATH="/home/itd72797/testData"; sequenceTubeMap
</syntaxhighlight>He would then set up an SSH tunnel by issuing the following from a separate terminal <u>'''on his personal computer'''</u> using the IP address he identified earlier:<syntaxhighlight lang="bash">
</syntaxhighlight>He would then set up an SSH tunnel by issuing the following from a separate terminal <u>'''on his personal computer'''</u> using the IP address he identified earlier, the desired port, and his UGA MyID:<syntaxhighlight lang="bash">
ssh -N -L 8972:10.33.30.130:8972 itd72797@sapelo2.gacrc.uga.edu
ssh -N -L 8972:10.33.30.130:8972 itd72797@sapelo2.gacrc.uga.edu
</syntaxhighlight>To connect, he would open a browser window on his personal computer and navigate to http://localhost:8972 .
</syntaxhighlight>To connect, he would open a browser window on his personal computer and navigate to http://localhost:8972 .

Latest revision as of 09:13, 8 September 2023

Category

Bioinformatics

Program On

Sapelo2

Version

20230906

Author / Distributor

vgteam

Description

"A JavaScript module for the visualization of genomic sequence graphs. It automatically generates a "tube map"-like visualization of sequence graphs which have been created with vg."

Running Program

This program, like others, should not be run on a submit node (ss-sub2, ss-sub3, ss-sub4, etc.). Instead, run this program from within an interactive session, which can be entered using the following command on a submit node:

interact

Load Module

module load sequenceTubeMap/20230906-GCCcore-11.3.0

Obtain IP Address

Obtain the IP address of the server that will host sequenceTubeMap for use in a later step:

hostname -i

Starting the server

Starting the program is as simple as defining the port and data path in environment variables and running the server. Make sure to provide the absolute path of your data.

export SERVER_PORT=<port>; export MOUNTED_DATA_PATH=<data_path>; sequenceTubeMap

Configure SSH Tunnel

It will be necessary to use SSH tunneling to connect to the web frontend from within a web browser. Please note that this step is to be performed on your local computer. It is recommended to setup the SSH tunnel from a new, separate terminal.

Note: Successfully creating an SSH tunnel at the command line may cause the terminal to seem as though it froze or hung with no response, which is the expected behavior.

SSH Tunneling from Mac or Linux

From your local terminal, issue the following command while making sure to replace HOST with the actual IP address obtained in the previous step, PORT with the port number used, and MyID with your UGA MyID:

ssh -N -L PORT:HOST:PORT MyID@sapelo2.gacrc.uga.edu
SSH Tunneling from Windows

Download the plink program, open a command window--the current directory of this command window should contain the plink.exe file--and execute the following command, replacing HOST with the actual IP address obtained in the previous step, PORT with the port number used, and MyID with your UGA MyID:

plink -ssh -N -L PORT:HOST:PORT MyID@sapelo2.gacrc.uga.edu

Connecting to the Server

To connect to the server, simply open a web browser on the computer connected to the SSH tunnel, and navigate to http://localhost:PORT in the URL bar, making sure to replace PORT with the actual port number used.

Example Usage

If the user, itd72797, would like to host this program to visualize his data, he would first enter into an interactive session:

interact

Second, he would load the corresponding module:

module load sequenceTubeMap/20230906-GCCcore-11.3.0

Third, he would take note of the IP address of the server on which his interactive session is currently running:

hostname -i

If he has data in a directory at the file path /home/itd72797/testData and would like to host it on port 8972, he would execute the following from within the same interactive session:

export SERVER_PORT=8972; export MOUNTED_DATA_PATH="/home/itd72797/testData"; sequenceTubeMap

He would then set up an SSH tunnel by issuing the following from a separate terminal on his personal computer using the IP address he identified earlier, the desired port, and his UGA MyID:

ssh -N -L 8972:10.33.30.130:8972 itd72797@sapelo2.gacrc.uga.edu

To connect, he would open a browser window on his personal computer and navigate to http://localhost:8972 .

Documentation

Please reference the program's GitHub page at https://github.com/vgteam/sequenceTubeMap for further reading.

System

64-bit Linux