Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
cpu Docker update to cuDNN 6 Apr 14, 2017
gpu Docker update to cuDNN 6 Apr 14, 2017
README.md Document switch to explicit flags for docker: cpu / gpu. Feb 8, 2017


Running an official image

You can run one of the automatic builds. E.g. for the CPU version:

docker run -ti bvlc/caffe:cpu caffe --version

or for GPU support (You need a CUDA 8.0 capable driver and nvidia-docker):

nvidia-docker run -ti bvlc/caffe:gpu caffe --version

You might see an error about libdc1394, ignore it.

Docker run options

By default caffe runs as root, thus any output files, e.g. snapshots, will be owned by root. It also runs by default in a container-private folder.

You can change this using flags, like user (-u), current directory, and volumes (-w and -v). E.g. this behaves like the usual caffe executable:

docker run --rm -u $(id -u):$(id -g) -v $(pwd):$(pwd) -w $(pwd) bvlc/caffe:cpu caffe train --solver=example_solver.prototxt

Containers can also be used interactively, specifying e.g. bash or ipython instead of caffe.

docker run -ti bvlc/caffe:cpu ipython
import caffe

The caffe build requirements are included in the container, so this can be used to build and run custom versions of caffe. Also, caffe/python is in PATH, so python utilities can be used directly, e.g. draw_net.py, classify.py, or detect.py.

Building images yourself


docker build -t caffe:cpu cpu

docker build -t caffe:gpu gpu

You can also build Caffe and run the tests in the image:

docker run -ti caffe:cpu bash -c "cd /opt/caffe/build; make runtest"