Skip to content

[update] docker support for installation#33

Open
Thysrael wants to merge 1 commit intomit-han-lab:mainfrom
Thysrael:main
Open

[update] docker support for installation#33
Thysrael wants to merge 1 commit intomit-han-lab:mainfrom
Thysrael:main

Conversation

@Thysrael
Copy link

@Thysrael Thysrael commented Feb 2, 2026

Description

This PR introduces a Docker-based installation workflow to address environment inconsistency and dependency conflicts during the installation process.

Motivation

The original installation process for Quest involves complex system-level dependencies. Specifically, building libraft and other custom CUDA kernels requires specific versions of:

  • GCC/G++
  • CUDA Toolkit
  • CMake (older or newer versions might break the build)
  • Various C++ libraries (e.g., fmt)

These requirements were not fully documented, often leading to installation failures on different host systems. By providing a standardized Docker environment, we encapsulate these dependencies, ensuring a "one-click" setup experience.

Key Changes

  1. Added Dockerfile: A multi-stage-ready environment based on CUDA 12.4 and Ubuntu 22.04, pre-configured with the necessary Conda environment, cmake, ninja, and system libraries.
  2. Updated README.md: Added a "Docker Installation" section as the recommended setup method, providing clear steps for building the image and running the container with GPU support.

Validation

I have successfully verified this Docker-based installation on the following hardware:

  • NVIDIA H20
  • NVIDIA RTX 4090

On both platforms, the kernels (including libraft) and the quest package compiled and ran without issues.

Acknowledgements

First of all, thank you for developing such an excellent project! Quest is an amazing work, and I have found it incredibly valuable for my own research and development.

I'm contributing this Docker support to help more users get started with Quest quickly and to reduce the maintenance burden related to environment issues. I hope this enhancement is helpful to the community!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

Comments