Local Arbor installation
The instructions below are the simplest way to get an Arbor instance up and going on your own personal machine. They should work equally well for installing Arbor on a server.
It is also worth noting that you can run Arbor without installing it locally. In fact, Arbor is made to run over the web - and perhaps one of our Arbor instances on AWS can already serve you?
To install Arbor locally, you need the following three programs - each of which might have some dependencies of its own. All three are free and open source.
|First, you need VirtualBox, the method we use to create and host virtual machines.|
|Second, you need Ansible, the manager that decides which software gets installed on your virtual machine. Quick link to installation instructions for Ansible|
|Finally, you need Vagrant, which manages the whole process.|
Step 1: Get the “Flow”
To begin, clone the two github repos that you will need: the Flow repo from Kitware, which has all that you need to set up an empty Arbor instance; and the arborCollections repo, which has all of the basic Arbor collections you will need.
To clone these two repositories, use “git clone”.
Lukes-MacBook-Pro:downloads lukeharmon$ git clone https://github.com/Kitware/flow.git Cloning into 'flow'... remote: Counting objects: 2812, done. remote: Total 2812 (delta 0), reused 0 (delta 0), pack-reused 2812 Receiving objects: 100% (2812/2812), 1.23 MiB | 0 bytes/s, done. Resolving deltas: 100% (1797/1797), done. Lukes-MacBook-Pro:downloads lukeharmon$ git clone https://github.com/arborworkflows/arborCollections.git Cloning into 'arborCollections'... remote: Counting objects: 6784, done. remote: Total 6784 (delta 0), reused 0 (delta 0), pack-reused 6784 Receiving objects: 100% (6784/6784), 99.45 MiB | 8.45 MiB/s, done. Resolving deltas: 100% (3613/3613), done. Lukes-MacBook-Pro:downloads lukeharmon$
Step 2: Launch Arbor
Now, you will launch your arbor instance. In the terminal, navigate to your local copy of the flow repository. If you just cloned the repo, then:
Now, launch Vagrant, which will use Ansible and VirtualBox to set up your Arbor instance.
Now you wait. This might take a while - perhaps even 20 minutes or so!
When the whole process is finished, you should see a success message.
PLAY RECAP ********************************************************************* flow : ok=75 changed=56 unreachable=0 failed=0
Now you can visit your Arbor instance by opening a web browser (we recommend Chrome) and navigating to:
You should see a brand-new empty Arbor instance:
Step 3: Install Arbor collections
To do this, you will need to obtain the current arbor collections from github; then those collections can be loaded into Girder, which manages the functions, data, and users in Arbor.
First, ssh into your virtual machine.
You will see a login message and then a command prompt:
Welcome to Ubuntu 14.04.5 LTS (GNU/Linux 3.13.0-117-generic x86_64) * Documentation: https://help.ubuntu.com/ System information as of Mon May 15 16:32:29 UTC 2017 System load: 0.11 Processes: 95 Usage of /: 9.3% of 39.34GB Users logged in: 0 Memory usage: 15% IP address for eth0: 10.0.2.15 Swap usage: 0% Graph this data and manage this system at: https://landscape.canonical.com/ Get cloud support with Ubuntu Advantage Cloud Guest: http://www.ubuntu.com/business/services/cloud New release '16.04.2 LTS' available. Run 'do-release-upgrade' to upgrade to it. Last login: Mon May 15 16:32:29 2017 from 10.0.2.2 vagrant@vagrant-ubuntu-trusty-64:~$
Now clone the arborCollections github repository into that directory.
git clone https://github.com/arborworkflows/arborCollections.git
You should get this result:
vagrant@vagrant-ubuntu-trusty-64:~$ git clone https://github.com/arborworkflows/arborCollections.git Cloning into 'arborCollections'... remote: Counting objects: 6784, done. remote: Total 6784 (delta 0), reused 0 (delta 0), pack-reused 6784 Receiving objects: 100% (6784/6784), 99.45 MiB | 12.99 MiB/s, done. Resolving deltas: 100% (3613/3613), done. Checking connectivity... done. vagrant@vagrant-ubuntu-trusty-64:~$
Finally, run a python script that loads these analyses into Arbor:
python /vagrant/devops/load-analysis.py ./arborCollections
You will see analyses being loaded into Arbor:
Merge Tree, Occurrences, and Morphology.json successfully uploaded to advanced-phylomap LifeMapper occurrences from Experiment Number.json successfully uploaded to advanced-phylomap Explore LifeMapper occurrences from Experiment Number.json successfully uploaded to advanced-phylomap Return LifeMapper occurrences from Experiment Number Table.json successfully uploaded to advanced-phylomap
And so on…
Now, when you go back to your Arbor instance at http://localhost:8080/, you will see all the analyses loaded:
Now you are ready to do things in Arbor!