[IPython-User] Amazon ec2 instance with ipython notebook info

Carl Smith carl.input@gmail....
Mon Nov 12 11:38:59 CST 2012


Hi Daniel

Yes, that guide covers everything you need to know to get started with
a public IPython server. If you create an instance on EC2, using the
AWS console, you can log into it with SSH, and install everything you
need from a terminal. Fernando provided the following shell stuff when
I was building NotebookCloud, which was very useful to me. You can use
this as a starting point to get set up with a fully featured version.
I'm not sure if anything has changed since, I think one dependency was
removed, but this should still be fine to use. Anyone??

I used Ubuntu 12.04 as the base AMI, which worked well for me.

You'll need to use an IPython config as explained on the page you linked to.

Note, you don't need all the following packages, it's just nice to have them.



sudo apt-get install ipython ipython-notebook python-scipy \
    python-matplotlib python-rpy2 \
    python-sympy cython python-networkx python-pexpect python-nose \
    python-mpi4py python-h5py python-tables \
    python-pandas python-sklearn python-scikits.statsmodels \
    python-pip python-setuptools python-sphinx python-pygments \
    octave

sudo apt-get build-dep python python-scipy python-matplotlib cython

for p in "ipython oct2py scikits-image pandas statsmodels networkx"
do
    sudo pip install -u $p
done




Once you have this set up, you'll need to launch the IPython server,
then log out, then point a browser at the server, using the Public DNS
address provided by EC2. It'll take a minute to come online.

Note that if you restart the server, you'll need to log back in to
start IPython Notebook up again. If you want to automate that, you
need a config file in /etc/init, which would contain something like...

start on (stopped rc RUNLEVEL=[2345] and stopped cloud-config)
exec /path/to/startup/script

You can then put whatever you need in the startup script, which will
need to at least launch the IPython Notebook server with any
appropriate flags.

You can then stop the instance, and turn it into an AMI from the AWS
console. Once you have your new AMI, you can use that for any future
instances. It'd be nice if a generic AMI was available already, but
because each user needs a different cert and password, it probably
can't be done.

Don't hesitate if you have any questions.

All the best

Carl


More information about the IPython-User mailing list