I'm starting to learn how to use TensorFlow to do machine learning. And find out docker is pretty convenient to deploy TensorFlow to my machine. However, the example that I could found did not work on my target setting. Which is
Under ubuntu16.04 os, using nvidia-docker to host jupyter and tensorboard service together(could be two container or one container with two service). And files create from jupyter should be visible to host OS.
- Ubuntu 16.04
- Dokcer
- nvidia-docker
- Jupyter
- Tensorboard
Jupyter container
nvidia-docker run \ --name jupyter \ -d \ -v $(pwd)/notebooks:/root/notebooks \ -v $(pwd)/logs:/root/logs \ -e "PASSWORD=*****" \ -p 8888:8888 \ tensorflow/tensorflow:latest-gpu Tensorboard container
nvidia-docker run \ --name tensorboard \ -d \ -v $(pwd)/logs:/root/logs \ -p 6006:6006 \ tensorflow/tensorflow:latest-gpu \ tensorboard --logdir /root/logs I tried to mount logs folder to both container, and let Tensorboard access the result of jupyter. But the mount seems did work. When I create new file in jupyter container with notebooks folder, host folder $(pwd)/notebooks just appear nothing.
I also followed the instructions in Nvidia Docker, Jupyter Notebook and Tensorflow GPU
nvidia-docker run -d -e PASSWORD='winrar' -p 8888:8888 -p 6006:6006 gcr.io/tensorflow/tensorflow:latest-gpu-py3 Only Jupyter worked, tensorboard could not reach from port 6006.