gw0 / docker-keras-full

Docker image: Deep learning environment with *Keras* and *Jupyter* using CPU or GPU

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

docker-keras-full

docker-keras-full is a Docker image built from Debian 9 (amd64) with a deep learning research environment based on Keras and Jupyter. It supports CPU and GPU processing with TensorFlow, Theano and CNTK backends. It features Jupyter Notebook with Python 2 and 3 support and uses only Debian and Python packages (no manual installations).

Open source project:

Available tags:

  • 2.1.4, latest [2018-02-15]: Python 2.7/3.5 + Keras (2.1.4) + TensorFlow (1.5.0) + Theano (1.0.1) + CNTK (2.4) on CPU/GPU
  • 2.1.1 [2017-12-01]: Python 2.7/3.5 + Keras (2.1.1) + TensorFlow (1.4.0) + Theano (1.0.0) + CNTK (2.3) on CPU/GPU
  • 2.0.2 [2017-03-27]: Python 2.7/3.5 + Keras (2.0.2) + TensorFlow (1.0.1) + Theano (0.9.0) on CPU/GPU
  • 1.2.0 [2016-12-21]: Python 2.7/3.5 + Keras (1.2.0) + TensorFlow (0.12.0) + Theano (0.8.2) on CPU/GPU
  • 1.1.0 [2016-09-20]: Python 2.7/3.5 + Keras (1.1.0) + TensorFlow (0.10.0) + Theano (0.8.2) on CPU/GPU
  • 1.0.8 [2016-08-28]: Python 2.7/3.5 + Keras (1.0.8) + TensorFlow (0.9.0) + Theano (0.8.2) on CPU/GPU
  • 1.0.6 [2016-07-20]: Python 2.7/3.5 + Keras (1.0.6) + TensorFlow (0.9.0) + Theano (0.8.2) on CPU/GPU
  • 1.0.4 [2016-06-16]: Python 2.7/3.5 + Keras (1.0.4) + TensorFlow (0.8.0) + Theano (0.8.2) on CPU/GPU

Usage

Quick experiment from console with IPython 2.7 or 3.5:

$ docker run -it --rm gw000/keras-full ipython2
$ docker run -it --rm gw000/keras-full ipython3

To start the Jupyter web interface on http://<ip>:8888/ (password: keras) and notebooks stored in current directory (will be mapped to /srv):

$ docker run -d -p 8888:8888 -v $(pwd):/srv gw000/keras-full

To utilize your GPUs this Docker image needs access to your /dev/nvidia* devices and CUDA Driver libraries (see docker-debian-cuda), like:

$ docker run -d $(ls /dev/nvidia* | xargs -I{} echo '--device={}') $(ls /usr/lib/*-linux-gnu/{libcuda,libnvidia}* | xargs -I{} echo '-v {}:{}:ro') -p 8888:8888 -v $(pwd):/srv gw000/keras-full

To change the default password and token authentication, prepare a new hashed password and a token string and pass it as environment variables:

$ docker run -d -p 8888:8888 -e PASSWD="sha1:..." -e TOKEN="..." -v $(pwd):/srv gw000/keras-full

If the TensorFlow backend is used, it is possible to start the TensorBoard visualization tool directly from the Jupyter web interface (see usage).

Feedback

If you encounter any bugs or have feature requests, please file them in the issue tracker or even develop it yourself and submit a pull request over GitHub.

License

Copyright © 2016-2018 gw0 [http://gw.tnode.com/] <gw.2018@ena.one>

All code is licensed under the GNU Affero General Public License 3.0+ (AGPL-3.0+). Note that it is mandatory to make all modifications and complete source code publicly available to any user.

About

Docker image: Deep learning environment with *Keras* and *Jupyter* using CPU or GPU