Getting Started With Docker

Docker is a fantastic tool for creating light-weight containers to run your tools. What this means is it gives you a fast VM-like environment for Linux where you can automatically install dependencies, make configurations, and setup your tool exactly the way you want, as you would on a “normal” Linux host. You can then quickly and easily share these Docker images with the world using registries like (indexed by Dockstore), Docker Hub, and GitLab. The full details on how to make new Docker images is beyond the scope of this site. Here we will go through a simple representative example. The end-product is a Dockerfile for your tool stored in a supported Git repository. The steps, at a high level, are:

This is a companion discussion topic for the original entry at