This repository hosts various Dockerfiles used for developing, testing, and distributing software from Borglab, primarily focusing on GTSAM and GTDynamics.
Each subdirectory contains a README with specific details.
-
ubuntu-base: Base image (Ubuntu 24.04) with Boost (and optionally, TBB) libraries pre-installed. Serves as a foundation for other images.
-
gtsam: A pre-compiled environment containing the latest
developbranch of GTSAM. Useful for quick testing or as a base for downstream apps. -
gtsam-manylinux: An environment based on
manylinux2014tailored for building Python wheels for GTSAM. -
gtdynamics-manylinux: Extends
gtsam-manylinuxwith Ignition/Gazebo dependencies (SDFormat, ign-math, etc.) for building GTDynamics Python wheels. -
gtsam-ci: A collection of images used in GitHub Actions for Continuous Integration. Includes matrices for different Ubuntu versions (22.04, 24.04) and compilers (Clang, GCC).
You can build any of these images locally by navigating to the directory and running docker build. Check the specific READMEs for detailed instructions.
Many of these images are available on Docker Hub under the borglab namespaces.
- Create a new branch for your changes.
- If adding a new image, create a new directory with a
Dockerfileand aREADME.md. - Test the build locally.
- Submit a Pull Request.