pythainer: composable and reusable Docker builders and runners for reproducible research

Read full text
Authors: Antonio Paolillo
Cited by: 1
References: 9

Abstract

Software experiments today often depend on complex Linux environments that combine several toolchains, devices, and graphical interfaces.Many research projects (Mayoral-Vilches et al., 2022;Millane et al., 2024), for instance, need to compose ROS 2 (Macenski et al., 2022) with CUDA (CUDA C++ Programming Guide, 2025), require non-root users, provide GPU and GUI access, and must be reproducible across time and machines.Docker (Docker, Inc., 2013) is a widely adopted substrate for packaging and running such environments, and is commonly used to improve reproducibility in research software (Tani et al., 2020).However, writing and maintaining Dockerfiles and project-specific docker run scripts becomes a burden as requirements grow.pythainer raises the level of abstraction while remaining Docker-native.It lets users describe images as small, testable Python builders that can be composed (e.g., ROS 2 + CUDA) and executed with reusable runners that capture runtime policy (GPU, GUI, users, mounts).pythainer renders deterministic Dockerfiles, builds standard images, and centralizes run configuration, hence improving reuse and reducing duplication across repositories.

Fields of Study & Subjects

Scientific Computing and Data Management Cell Image Analysis Techniques Academic Publishing and Open Access

Publication details

Journal / source
The Journal of Open Source Software
Publisher
The Open Journal
Volume
11
Issue
117
Pages
9059–9059
Publication date
9 January 2026