Installation

There are two ways to install XCP-D:

Container Technologies

XCP-D is ideally run via a Docker or Apptainer container. If you are running XCP-D locally, we suggest Docker. However, for security reasons, many HPCs do not allow Docker containers, but do allow Apptainer containers. The improved security for multi-tenant systems comes at the price of some limitations and extra steps necessary for execution.

Docker Installation

For every new version of XCP-D that is released, a corresponding Docker image is generated.

In order to run XCP-D via Docker images, the Docker Engine must be installed.

If you have used XCP-D via Docker in the past, you might need to pull down a more recent version of the image:

$ docker pull pennlinc/xcp_d:<latest-version>

The image can also be found here: https://hub.docker.com/r/pennlinc/xcp_d

XCP-D can be run interacting directly with the Docker Engine via the docker run command, or through a lightweight wrapper that was created for convenience.

Apptainer Installation

You can create an Apptainer image directly on the system using the following command:

$ apptainer build xcp_d-<version>.simg docker://pennlinc/xcp_d:<version>

where <version> should be replaced with the desired version of XCP-D that you want to download.

Manually Prepared Environment (Python 3.10)

Warning

This method is not recommended! Please use container alternatives in Docker, and Apptainer.

XCP-D requires some External Dependencies. These tools must be installed and their binaries available in the system’s $PATH.

On a functional Python 3.10 environment with pip installed, XCP-D can be installed using the habitual command

$ pip install git+https://github.com/pennlinc/xcp_d.git

Check your installation with the --version argument

$ xcp_d --version

External Dependencies

XCP-D is written using Python 3.10, is based on nipype, and requires some other neuroimaging software tools that are not handled by the Python’s packaging system (PyPi) used to deploy the XCP-D package: