[ Web Proxy ]
URL:
Viewing: https://raw.githubusercontent.com/ProjectPyRhO/Prometheus/master/README.md [Back]  [Original]

Prometheus: Modelling as a Service
==================================

This is a repository for building a customised [tmpnb](https://github.com/jupyter/tmpnb) server for optogenetics with [PyRhO](https://github.com/ProjectPyRhO/PyRhO) installed and configured. Credit to the [Jupyter team](https://github.com/orgs/jupyter/people) for their work on tmpnb as one of the many great [Jupyter projects](https://github.com/jupyter)!

For updates on PyRhO, follow us on [twitter (@ProjectPyRhO)](https://twitter.com/ProjectPyRhO).

Quickstart: Try PyRhO
---------------------

Simply go to [try.projectpyrho.org](http://try.projectpyrho.org) and enjoy!

Further Information
-------------------

A paper introducing Prometheus and Modelling as a Service (MaaS) can be found [here](https://dx.doi.org/10.1109/BioCAS.2016.7833795). If you use or adapt this work, please use the following citation:

Evans, B. D. and Nikolic, K. (2016) "From Bytes to Insights with Modelling as a Service: A new paradigm for computational modelling illustrated with PyRhO, in *2016 IEEE Biomedical Circuits and Systems Conference (BioCAS)*, Shanghai, China. p316319. [doi:10.1109/BioCAS.2016.7833795](https://dx.doi.org/10.1109/BioCAS.2016.7833795)

```
@InProceedings{Evans+Nikolic2016c,
  author = {Evans, Benjamin D. and Nikolic, Konstantin},
  booktitle = {2016 IEEE Biomedical Circuits and Systems Conference (BioCAS)}, 
  title = {From Bytes to Insights with Modelling as a Service: A new paradigm for computational modelling illustrated with {PyRhO}},
  year = {2016},
  month = {Oct},
  isbn = {978-1-5090-2959-4},
  location = {Shanghai, China},
  pages = {316--319},
  publisher = {IEEE},
  address = {New York, NY, USA},
  doi = {10.1109/BioCAS.2016.7833795}, 
}
```

Interactive Docker image
------------------------

#### To run the PyRhO docker image:

Clone the repository: `git clone https://github.com/ProjectPyRhO/Prometheus.git && cd Prometheus`
Start the docker service e.g.: `sudo service docker start`
Then run these commands to build the image and launch the notebook:

```bash
docker build -t pyrho/minimal .
docker run -p 8888:8888 -it pyrho/minimal
```

Finally go to your browser and open `localhost:8888`.

N.B. If you are using docker machine, you will need to replace `localhost` with the IP address of the host, obtained with the following command: `docker-machine ip`.

Build Prometheus
----------------

#### Create an account to run the portal and disable root access
See [this guide](https://www.digitalocean.com/community/tutorials/initial-server-setup-with-ubuntu-14-04) for details including generating ssh keys.

```bash
adduser monty
gpasswd -a monty sudo
sudo nano /etc/ssh/sshd_config
```

Edit the sshd_config file to disable root login:
> PermitRootLogin no

Then restart the ssh daemon:

`service ssh restart`

Log out then log back in with the new (non-root) user account.
Finally update the system, install docker, build the image and launch the server!

```bash
sudo apt-get update && sudo apt-get upgrade
sudo apt-get install make
git clone https://github.com/ProjectPyRhO/Prometheus.git
cd Prometheus
make setup
make image
make launch
```

Useful commands
---------------

#### Clean docker images

`make clean`

Alternatively:

```bash
docker stop $(docker ps -a -q)
docker rm $(docker ps -a -q)
docker rm $(docker ps -qa --no-trunc --filter "status=exited")
docker rmi $(docker images -q --no-trunc --filter "dangling=true")
```

#### Check logs

```bash
make log-proxy
make log-tmpnb
sudo iptables -L
```

N.B. After an os update it may be necessary to run:
`sudo apt-get install linux-image-extra-$(uname -r)`

Web Proxy Viewer  |  New URL  |  Original Page