- Install Docker Guide
- Test Docker
$ sudo usermod -aG docker $USER
. (Add USER to Docker Group)$ docker run hello-world
- Setting up NVIDIA Container Toolkit
$ distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
$ curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -
$ curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list
- Install Nvidia-Docker2
$ sudo apt install -y nvidia-docker2
$ sudo systemctl restart docker
- Test Docker2
$ sudo docker run --rm --gpus all nvidia/cuda:11.0-base nvidia-smi
- Example Pull Tensorflow
$ docker pull tensorflow/tensorflow
# latest stable release OR$ docker pull tensorflow/tensorflow:latest-gpu-jupyter
# latest release w/ GPU support and Jupyter
- Example Run Tensorlfow Docker
$ docker run [-it] [--rm] [-p hostPort:containerPort] tensorflow/tensorflow[:tag] [command]
- Start Docker Tensorflow GPUs with Jupyter
$ docker run -it --rm -v ~/jupyters:/tf/notebooks -p 8888:8888 tensorflow/tensorflow:latest-jupyter
$ docker run --gpus all -it --rm -v ~/jupyters:/tf/notebooks -p 8888:8888 tensorflow/tensorflow:latest-jupyter
docker run
-- will run command in new container-it
-- interactive and allocate tty--rm
-- will auto remove container when it exits-v
-- mounting volume (I am mounting my jupyters folder under HOME to /tf/notebooks in jupyter)-p
-- publish caontainer's port(s) to host- last one is Image I've downloaded from dockerhub.
Let's create a cotainter first for later uses.
$ docker run --name tfdk --gpus all -dt -v ~/jupyters:/tf/notebooks -p 8888:8888 tensorflow/tensorflow:latest-jupyter
docker run
-- will run command in new container-dt
-- detach (run background and print container ID) and allocate tty-v
-- mounting volume (I am mounting my jupyters folder under HOME to /tf/notebooks in jupyter)-p
-- publish caontainer's port(s) to host- last one is Image I've downloaded from dockerhub.
Open browser and visit localhost:8888
cuz conatiner is forwarding to port your_host:8888
.
It will ask you token or password for jupyter for the first time. $ docker exex -it tfdk notebook list
You can get interactive shell $ docker exex -it tfdk /bin/bash
Quit Jupyter server or $ docker stop tfdk
will stop docker from running.
For next time just type $ docker start tfdk
and visit your host localhost:8888
.