Core Docker commands

This section contains core Docker commands for running containers and pushing images to the CAVATICA image registry.

Make sure Docker is running

  • Mac OS 10.10.3 Yosemite or newer: run Docker Desktop for Mac and start a terminal of your choice.
  • Mac OS 10.8 Mountain Lion or newer: run Docker Quickstart terminal to start Docker Machine.
  • Windows 10: run Docker Desktop for Windows and start a terminal of your choice.
  • Windows 7 or 8: run Docker Quickstart Terminal to start Docker Machine.
  • Linux: no action required.

Note: Scroll the table horizontally to see the entire content.

CommandEffect
$ docker login pgc-images.sbgenomics.comThis returns a prompt for your CAVATICA credentials, and then, if satisfied, gives you access to the CAVATICA registry. Don't forget to add pgc-images.sbgenomics.com to this command, or else the utility will attempt to log you in to the Docker Hub registry.

You should enter your authentication token in response to the password prompt, not your CAVATICA password.
$ docker run -ti <image>This runs a Docker container on your local machine. <image> can be any image in Docker Hub or the CAVATICA image registry that you have uploaded or have permission to access. The -ti flag makes the container run, interactively.

If you are opening an image from Docker Hub, specify <image> using <docker_repository>[:tag], e.g. ubuntu.
If you are opening an image from the CAVATICA registry, <image> should be specified using the format pgc-images.sbgenomics.com/<username>/<repository_name>/[:tag], e.g pgc-images.sbgenomics.com/rfranklin/samtools:v1.
$ docker ps -aThis lists all your Docker containers.
docker commit <container ID> pgc-images.sbgenomics.com/<username>/<repository_name>[:tag]This takes an image (snapshot) of the container with ID <container ID>, and names the image with the format recognised by the CAVATICA registry.
You can find the container ID of an image using docker ps -a.
$ docker imagesThis lists all your local Docker images.
$ docker tag <image> pgc-images.sbgenomics.com/<username>/<repository_name>[:tag]This tags the image with a reference to
the CAVATICA registry.
$ docker push pgc-images.sbgenomics.com/<username>/<repository_name>[:tag]This uploads your Docker image to the CAVATICA registry, so that the tool in it can be used on CAVATICA.
$ docker rmi pgc-images.sbgenomics.com/<username>/<repository_name>[:tag]This removes the specified Docker image from your local machine
$ docker pull pgc-images.sbgenomics.com/<username>/<repository_name>[:tag]This downloads the specified image from the CAVATICA registry.
$ docker logout pgc-images.sbgenomics.comThis stops your connection to the CAVATICA image registry.