Abstract
Containerization has become an issue of increased importance to scientific computing and software engineering. The use of scientific software is increasing to advance science and technology. This software is developed by a large group of people and has dependencies. These kinds of dependencies create a problem when moved to another computing environment due to differences in the operating system, applications, data, and so forth. The complex and changing nature of computing environments makes it challenging to achieve reproducibility of code, tools, sharing of data and verification of reproduced code. Lightweight, portable container technology has recently gained popularity to solve these kinds of issue. The containers provide overall runtime environment: an application, along with all its dependencies, libraries, binaries, codes and other configuration files required to run it, are bundled into one package which abstracts differences in operating system distributions and underlying Infrastructure. Here, we bring Research as code, a methodology to instrument containers for scientific computing and reproducibility to translate the property of modern, high-quality services into research. This project will provide a methodology which will not only ship the researcher’s code and infrastructure in Docker containers but also presents some techniques to test the researcher’s work using some testing mechanism and code repositories.