...
Code Block | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
# Get a list of all the docker images docker images # or docker image list # To view a list of docker processes docker ps |
...
2 - The Dockerfile - building an image
Our end goal is to make a container from which we can run our own code. However, to achieve this, we need to create something called an image first. An image is a prototype of a container; it serves as a premade snapshot that can be used to spawn any number of containers. An image is created from something called a Dockerfile, which in its most basic form is just a list of prerequisites you want installed and commands you want to run before every startup. The example below should be a nice starting point.
Code Block | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
# Use the latest tf GPU image as parent. This operation is analogous to inheritance in OOP. # The image ships with tensorlfow-gpu and jupyter installed for python 2. It is also # configured so that a jupyter server will be launched at container startup. Note that you # don't have to use this image as parent. FROM tensorflow/tensorflow:latest-gpu # Set working directory for container WORKDIR /app # Make ssh directory (useful for adding ssh keys later) RUN mkdir -p /root/.ssh # Update repositories RUN apt-get update # Install git RUN apt-get install git -y # Install pip3 (parent image only comes with python2 stuff) RUN apt-get install python3-pip -y # Install your python packages RUN pip3 install --upgrade pip RUN pip3 install numpy # Add more pip installs here. Alternatively move everything to a dedicated requirements file. |
...