1 Docker

Docker is a free platform for building containers. Containers are standard units of software that package together code and dependencies, so that the code can be executed reliably irrespective of computing environment. slapnap relies on machine learning implemented in the R language and relies on several packages. Achieving full reproducibility for such analyses is challenging in that it requires synchronization across the specific version of R and dependent packages. In other words, two users running two versions of R or two versions of the same R package may arrive at different output when running the same code. Containerization ensures that this does not happen. Any two runs of the same built slapnap container with the same input options will yield the same output every time.

Installing Docker is necessary for running slapnap. While it is not necessary for execution of the slapnap container, readers interested in learning more about Docker should consult the Docker documentation for information about getting started using Docker.

Once Docker has been installed on your local computer, you can download slapnap using the following command.

docker pull slapnap/slapnap

This command pulls an image (a built slapnap container) from DockerHub. Once the image has been downloaded, we are ready to learn about how to execute slapnap jobs. The next section contains information on the source data used by slapnap. Users familiar with the CATNAP data may wish to skip directly to Section 3.