Browse files

Updates to docker image

  • Loading branch information...
freeman-lab committed Jul 24, 2015
1 parent 22973eb commit c4c92d1b911a6949f2849a2abb06e2df93f52772
@@ -5,41 +5,42 @@ FROM debian:jessie
MAINTAINER freemanlab <>
ENV DEBIAN_FRONTEND noninteractive
RUN apt-get update && apt-get install -y git vim wget build-essential python-dev ca-certificates bzip2 libsm6 && apt-get clean
ENV CONDA_DIR /opt/conda
# Install conda for the codeneuro user only (this is a single user container)
# Core installs
RUN apt-get update && \
apt-get install -y git vim wget build-essential python-dev ca-certificates bzip2 libsm6 && \
apt-get clean
# Install conda
RUN echo 'export PATH=$CONDA_DIR/bin:$PATH' > /etc/profile.d/ && \
wget --quiet && \
/bin/bash / -b -p $CONDA_DIR && \
rm && \
$CONDA_DIR/bin/conda install --yes conda==3.10.1
# We run our docker images with a non-root user as a security precaution.
# freemanlab is our user
# Create a user
RUN useradd -m -s /bin/bash freemanlab
RUN chown -R freemanlab:freemanlab $CONDA_DIR
# Open port
# Env vars
USER freemanlab
ENV HOME /home/freemanlab
ENV SHELL /bin/bash
ENV USER freemanlab
# Setup ipython
RUN conda install --yes ipython-notebook terminado && conda clean -yt
RUN ipython profile create
# Workaround for issue with ADD permissions
# Switch to root for permissions
USER root
RUN apt-get update
# Java setup
RUN apt-get install -y default-jre
@@ -72,14 +73,18 @@ ADD notebooks $HOME/notebooks
# Set up the kernelspec
RUN /opt/conda/envs/python3.4-env/bin/ipython kernelspec install-self
# Set permissions on the notebooks
RUN chown -R freemanlab:freemanlab $HOME/notebooks
# Switch back to non-root user
USER freemanlab
WORKDIR $HOME/notebooks
# Setup Spark + IPython env vars
ENV PYSPARK_PYTHON=/opt/conda/bin/python
ENV PYSPARK_DRIVER_PYTHON=/opt/conda/bin/python
ENV IPYTHON_OPTS "notebook --ip="
CMD /bin/bash -c pyspark
@@ -4,7 +4,27 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"# Intro to Bolt"
"<div class=\"clearfix\" style=\"padding: 0px; padding-left: 0px;\">\n",
"<a href=\"\"><img src=\"\" width=\"300px\" style=\"display: inline-block; margin-left: 0px;\"></a>\n",
"<p class='header-1'>Welcome to <span style='font-weight:800'>Bolt</span></p>\n",
"<p class='info-text'>Bolt is an Python project for working with ndarrays on small, medium, and very large data sets. It exposes array operations through either local or distributed implementations with a common interface, and makes it easy to switch between them. Its distributed implementation currently targets Spark, a powerful cluster computing framework. These notebooks are interactive tutorials running inside Docker containers powered by <a class='call-link bolt' href=''>tmbnb</a> that show how Bolt works.</p>\n",
"<p class='info-text'>For more information on Bolt, visit the <a class='call-link bolt' href=''>project</a> page or come <a class='call-link bolt' href=''>chat</a> with us.</p>\n",
"<p class='header-2'>Tutorials</p>\n",
"<a class='call-link bolt' href='tutorials/basic-usage.ipynb'>Basic usage</a>\n",
"<a class='call-link bolt' href='tutorials/axes.ipynb'>Manipulating axes</a>\n",
"<a class='call-link bolt' href='tutorials/stacking.ipynb'>Stacking (with scikit-learn application)</a>\n",
"<a class='call-link bolt' href='tutorials/chunking.ipynb'>Chunking (with scikit-image application)</a>\n",
Oops, something went wrong.

0 comments on commit c4c92d1

Please sign in to comment.