Skip to content

Docker

Run, find, build, and share Docker containers, from the command line to automated builds and multi-container applications.

  • Introduction to Docker - Run, inspect, and clean up Docker containers from the command line, mount data with volumes, and expose ports for browser-based IDEs.
  • Finding the right container - Container terminology and the public registries (Docker Hub, Quay.io, BioContainers, NVIDIA NGC) to search before building your own image.
  • Building Docker images - Write a Dockerfile instruction by instruction (FROM, RUN, ENV, COPY, CMD, ENTRYPOINT, USER, EXPOSE), including multi-stage builds.
  • Advanced Docker: volumes and bind mounts - Create, inspect, and populate Docker volumes, and use read-write and read-only bind mounts to share host data with containers.
  • GitHub Actions and Docker - Build and push Docker images to Docker Hub automatically with a GitHub Actions workflow and repository secrets.
  • Multi-container applications with Docker Compose - Define and run Jupyter and RStudio together from one Compose file, manage the stack with docker compose, and deploy WebODM.