# Docker Installation Use Docker for GPU inference on a Linux host with an NVIDIA GPU. All examples below are one-shot `docker run` commands executed from the host. For non-Docker installation, see [inference_instructions.md](./inference_instructions.md). ## 1. Verify Docker GPU support Install Docker and the [NVIDIA Container Toolkit](https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/install-guide.html), then verify that containers can see the GPU: ```bash docker run --rm --gpus all nvidia/cuda:12.6.3-base-ubuntu24.04 nvidia-smi ``` ## 2. Get the image Pull the prebuilt image: ```bash docker pull aurekaresearch/opendde:v1 ``` Or build from the repository root: ```bash docker build -t aurekaresearch/opendde:v1 . ``` ## 3. Prepare runtime data OpenDDE reads checkpoints and runtime data from `OPENDDE_ROOT_DIR`. If you have local checkpoints, place `opendde.pt` and/or `opendde_abag.pt` under `checkpoint/` in that directory: ```bash export OPENDDE_ROOT_DIR="$PWD/opendde_data" mkdir -p "$OPENDDE_ROOT_DIR/checkpoint" cp /absolute/path/to/opendde.pt "$OPENDDE_ROOT_DIR/checkpoint/opendde.pt" ``` Released checkpoints: | Checkpoint | Use case | Download | | --- | --- | --- | | `opendde.pt` | General-purpose OpenDDE checkpoint. | [opendde.pt](https://huggingface.co/aurekaresearch/OpenDDE/resolve/main/opendde.pt) | | `opendde_abag.pt` | ABAG-optimized checkpoint for antibody-antigen complexes. | [opendde_abag.pt](https://huggingface.co/aurekaresearch/OpenDDE/resolve/main/opendde_abag.pt) | For the default Docker command below, place the general-purpose checkpoint at `$OPENDDE_ROOT_DIR/checkpoint/opendde.pt`. When using the ABAG-optimized checkpoint, add this to the `opendde pred` command: ```bash --load_checkpoint_path /opendde_data/checkpoint/opendde_abag.pt ``` Download one checkpoint directly into the default host path: ```bash # General-purpose checkpoint: curl -L \ -o "$OPENDDE_ROOT_DIR/checkpoint/opendde.pt" \ https://huggingface.co/aurekaresearch/OpenDDE/resolve/main/opendde.pt # ABAG-optimized checkpoint: curl -L \ -o "$OPENDDE_ROOT_DIR/checkpoint/opendde_abag.pt" \ https://huggingface.co/aurekaresearch/OpenDDE/resolve/main/opendde_abag.pt ``` Download or verify the remaining runtime files with Docker: ```bash docker run --rm \ -v "$OPENDDE_ROOT_DIR":/opendde_data \ aurekaresearch/opendde:v1 \ bash scripts/download_opendde_data.sh \ --root /opendde_data ``` For protein-only smoke tests that disable MSA/template/RNA-MSA preprocessing, you can skip search databases: ```bash docker run --rm \ -v "$OPENDDE_ROOT_DIR":/opendde_data \ aurekaresearch/opendde:v1 \ bash scripts/download_opendde_data.sh \ --root /opendde_data \ --skip-search-database ``` ## 4. Run inference The command below assumes `tiny.json` exists in the current host directory. See [../README.md](../README.md) for the minimal input example. ```bash mkdir -p output docker run --rm --gpus all --shm-size=4g \ -e OPENDDE_ROOT_DIR=/opendde_data \ -v "$OPENDDE_ROOT_DIR":/opendde_data:ro \ -v "$PWD":/workspace \ -v "$PWD/output":/output \ aurekaresearch/opendde:v1 \ opendde pred \ -i /workspace/tiny.json \ -o /output \ -n opendde_v1 \ --use_msa false \ --use_template false \ --use_rna_msa false \ --sample 1 \ --step 200 \ --cycle 10 ``` For production inference options, MSA/template preprocessing, and checkpoint configuration, see [inference_instructions.md](./inference_instructions.md).