Skip to content

Python - Ananconda in Docker Container

How to run a full fledged Anaconda jupyter notebook that has all the components pre-installed

Sources:

1. Pull the docker container

$ ~ >> docker pull continuumio/anaconda3

#got the following output:
    Using default tag: latest
    latest: Pulling from continuumio/anaconda3
    05d1a5232b46: Pull complete
    33529d049adc: Pull complete
    be72550a31b7: Pull complete
    40cab810eef6: Pull complete
    Digest: sha256:a1da4c02879f7e1e16733fda772b074bbf4890cf1146fbf999d61d031b150f68
    Status: Downloaded newer image for continuumio/anaconda3:latest

2. To log in to the docker container, we can run the command below:

docker run -i -t continuumio/anaconda3 /bin/bash

3. To run Jupyter notebook in a no-browser mode, run the command below:

docker run -i -t -p 8888:8888 continuumio/anaconda3 /bin/bash -c "/opt/conda/bin/conda install jupyter -y --quiet && mkdir /opt/notebooks && /opt/conda/bin/jupyter notebook --notebook-dir=/opt/notebooks --ip='0.0.0.0' --port=8888 --no-browser --allow-root”

Note on what the command is doing: - -i is running the image interactively. - -t is allocate a pseudo-TTY. - -p is connect/publish the container ports to host.

Here localhost:8888 to 8888 of container.

A few more that you should know are: - -d is to run container in the background, without accidently closing it. - -v is to bind a volume to the container, useful when you want your notebooks and/or data to be reflected in the container from your local system.

4. Go to the browser and run http://localhost:8888 to start running your experiments.


NOTES:

  1. A token is generated. Copy that from the command line and paste in the browser to use the jupyter notebook.
  2. The command from the two Medium.com posts does not work coz of the part ip='**'.
    Changing that to ip=0.0.0.0 does the trick.
    Info from: anaconda - running conda's jupyter on docker - Stack Overflow.