Building Docker Containers for PDAL

PDAL’s repository is linked to DockerHub for automatic building of Docker containers. PDAL keeps three Docker containers current.

  • pdal/dependencies:latest – PDAL’s dependencies for Travis builds
  • pdal/pdal:latest – Latest PDAL release branch
  • pdal/pdal:1.5 – PDAL 1.5 maintenance branch
  • pdal/pdal:1.6 – PDAL 1.6 maintenance branch


PDAL’s public use Docker containers are built using Alpine Linux, but the containers that PDAL’s `Travis`_ infrastructure uses are built upon Ubuntu. The `Dependences`_ container corresponds to where ever the dependencies tag of the PDAL source tree at resides


The PDAL dependencies Docker container is used by Travis Continuous Integration testing by Travis. It is built using the Dockerfile at

The pdal/dependencies:latest image is regenerated by force-pushing a tag of the SHA you wish to use to have DockerHub build.

git tag -f dependencies
git push origin refs/tags/dependencies -f


The dependencies container is currently built upon Ubuntu Xenial. When the next Ubuntu LTS is released, the PDAL project will likely move to it.


A PDAL container corresponding to the last major release is automatically created and maintained with every commit to the active release branch. For example, the 1.6-maintenance branch will have a corresponding pdal/pdal:1.6 container made with every commit on DockerHub. Users are encouraged to use these containers for testing, bug confirmation, and deployment


Docker containers on maintenance branch correspond to major PDAL releases.

Latest (or master)

For convenience, pdal/pdal:latest corresponds to the latest release-branch, automatically built from the 1.x-maintenance branch as new commits are pushed to it.


You should be using the Maintenance Docker container for any production-oriented operations. latest may change version as a new PDAL release is made, but specifically versioned Docker containers will continue to be available.


The pdal/pdal:latest branch is current relative to the docker-master branch in GitHub.

$ git tag -f docker-master
$ git push origin refs/tags/docker-master -f