Genome Browser in a box config: Difference between revisions
Line 32: | Line 32: | ||
browserbox and browserbox-dev both accept only connections from hgwdev, not from outside. You cannot connect from your desktop machine to any box. So ssh on your desktop has to be told to forward a few ports to hgwdev. Once you start ssh, it will listen to some ports on your machine, all data gets tunneled through the ssh connection and appears on hgwdev on the localhost interface, where hgwdev will forward it to the browserbox. To make this happen, add this to your file ~/.ssh/config on your own OSX or linux machine: | browserbox and browserbox-dev both accept only connections from hgwdev, not from outside. You cannot connect from your desktop machine to any box. So ssh on your desktop has to be told to forward a few ports to hgwdev. Once you start ssh, it will listen to some ports on your machine, all data gets tunneled through the ssh connection and appears on hgwdev on the localhost interface, where hgwdev will forward it to the browserbox. To make this happen, add this to your file ~/.ssh/config on your own OSX or linux machine: | ||
Host | Host hgwdevtunnel | ||
Hostname hgwdev.sdsc.edu | Hostname hgwdev.sdsc.edu | ||
User <YOURHGWDEVUSER e.g. rhead> | User <YOURHGWDEVUSER e.g. rhead> | ||
Line 39: | Line 39: | ||
You can then do a "ssh devtunnel" to get connected to hgwdev and have the ports on your machine 1234 and 1236 forwarded to the boxes. | You can then do a "ssh devtunnel" to get connected to hgwdev and have the ports on your machine 1234 and 1236 forwarded to the boxes. | ||
== Compile binaries in browserbox-dev == | |||
We have a three 1/2 stage release cycle: devbox correspond to hgwdev, browserbox corresponds to beta, browserboxBeta.zip is a version of beta that can be tested on a OSX machine, the final zip file corresponds to the RR. | |||
start browserbox-dev: | |||
devStart | |||
connect + git pull + compile: | |||
ssh devbox compileCgis | |||
copy from devbox to beta distribution rsync server directory (this is defined in qateam's .bashrc): | |||
devUpdateRsync | |||
stop the box: | |||
boxStop | |||
== Test binaries in browserbox == | |||
On your desktop machine: | |||
ssh hgwdevtunnel | |||
on hgwdev, start browserbox: | |||
boxStart | |||
wait a few seconds, then: | |||
ssh box | |||
updateBrowser beta | |||
this will put the cgis and htdocs that were rsync'ed to hgwdev into the browserbox. | |||
You can now connect from your desktop to http://127.0.0.1:1234 and test the CGIs. | |||
If they are OK: | |||
sudo /root/cleanVm | |||
logout | |||
boxStop |
Revision as of 16:56, 9 April 2014
Internal config
The Gbib is a ubuntu 13 linux with apache, mysql and the default tools. See Preparing_VirtualBox_images
Hgwdev has virtualbox installed and two virtual machines (VMs) added: browserbox and browserbox-dev. Browserbox-dev can be used for development of box-specific patches. browserbox is the "master" image of the gbib.
The virtual machines live in qateam/VirtualBox VMs/. The central virtualbox xml config file where they are registered is ~/.config/VirtualBox/VirtualBox.xml
qateam has aliases to start and stop the VMs: boxStart / boxStop and devStart / devStop.
Once started, browserbox listens at port 1234 for web requests and at 1235 for ssh. browserbox-dev listens at 1236 for web requests and at 1237 for ssh.
SSH
qateam has these entries in their .ssh/config:
Host devbox Hostname localhost Port 1237 User browser
Host box Hostname localhost Port 1235 User browser
So you can do "ssh box" or "ssh devbox" on hgwdev to connect to the boxes.
There is no password, because the qateam ssh key was added to both boxes (see qateam's "scpdsa" command)
Connecting to the boxes from your desktop machine
browserbox and browserbox-dev both accept only connections from hgwdev, not from outside. You cannot connect from your desktop machine to any box. So ssh on your desktop has to be told to forward a few ports to hgwdev. Once you start ssh, it will listen to some ports on your machine, all data gets tunneled through the ssh connection and appears on hgwdev on the localhost interface, where hgwdev will forward it to the browserbox. To make this happen, add this to your file ~/.ssh/config on your own OSX or linux machine:
Host hgwdevtunnel Hostname hgwdev.sdsc.edu User <YOURHGWDEVUSER e.g. rhead> LocalForward 127.0.0.1:1234 127.0.0.1:1234 LocalForward 127.0.0.1:1236 127.0.0.1:1236
You can then do a "ssh devtunnel" to get connected to hgwdev and have the ports on your machine 1234 and 1236 forwarded to the boxes.
Compile binaries in browserbox-dev
We have a three 1/2 stage release cycle: devbox correspond to hgwdev, browserbox corresponds to beta, browserboxBeta.zip is a version of beta that can be tested on a OSX machine, the final zip file corresponds to the RR.
start browserbox-dev:
devStart
connect + git pull + compile:
ssh devbox compileCgis
copy from devbox to beta distribution rsync server directory (this is defined in qateam's .bashrc):
devUpdateRsync
stop the box:
boxStop
Test binaries in browserbox
On your desktop machine:
ssh hgwdevtunnel
on hgwdev, start browserbox:
boxStart
wait a few seconds, then:
ssh box updateBrowser beta
this will put the cgis and htdocs that were rsync'ed to hgwdev into the browserbox.
You can now connect from your desktop to http://127.0.0.1:1234 and test the CGIs.
If they are OK:
sudo /root/cleanVm logout boxStop