-
Notifications
You must be signed in to change notification settings - Fork 28
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1 changed file
with
39 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,39 @@ | ||
# RAPIDS devcontainer features and images | ||
# NVIDIA RAPIDS [Development Containers](https://containers.dev/) | ||
|
||
[Click here to see the list of `rapidsai/devcontainers` tags available in DockerHub.](https://hub.docker.com/r/rapidsai/devcontainers/tags) | ||
|
||
This repository contains devcontainers and features supporting NVIDIA [RAPIDS](https://github.com/rapidsai), [CCCL](https://github.com/nvidia/cccl), and [Legate](https://github.com/nv-legate) development and continuous integration. | ||
|
||
This repo is similar to the [devcontainers/features](https://github.com/devcontainers/features) and [devcontainers/images](https://github.com/devcontainers/images) repos, except we have chosen to use a monorepo to make packaging and versioning easier. | ||
|
||
## Pre-built [Images](https://hub.docker.com/r/rapidsai/devcontainers/tags) | ||
|
||
We publish a [matrix](matrix.yml) of pre-built images to DockerHub in order to speed up initialization of local devcontainers, GitHub Codespaces, and CI jobs. | ||
|
||
The images are compose of [features](https://containers.dev/implementors/features/), many of which are also defined in this repository (see [Features](#features) below). | ||
|
||
All the prebuilt images [contain](image/.devcontainer/devcontainer.json#L12-L33) `git`, `git-lfs`, `github-cli`, `gitlab-cli`, `cmake`, `ninja`, `sccache`, and our devcontainer utility scripts to automate certain in-container tasks. The images in `matrix.yml` extend this set of features by adding various dev tools, compilers, and SDKs. | ||
|
||
## Reusable [Features](features/src/) | ||
|
||
From the official devcontainer [documentation on Features](https://containers.dev/implementors/features/): | ||
> Development container "Features" are self-contained, shareable units of installation code and development container configuration. | ||
In short, a "feature" is a layer in a Dockerfile. A feature encapsulates a reusable bit of logic to run during a dockerfile build. | ||
|
||
This repository defines features to install the following dev tools, compilers, and SDKs: | ||
|
||
* [CMake](features/src/cmake/) | ||
* [CUDA Toolkit](features/src/cuda/) | ||
* [GCC](features/src/gcc/) | ||
* [GitLab-cli](features/src/gitlab-cli/) | ||
* [LLVM](features/src/llvm/) | ||
* [Mambaforge](features/src/mambaforge/) | ||
* [ninja](features/src/ninja/) | ||
* [NVIDIA HPC SDK](features/src/nvhpc/) | ||
* [Intel OneAPI](features/src/oneapi/) | ||
* [lit (from pypi)](features/src/python-lit/) | ||
* [Rust](features/src/rust/) | ||
* [sccache](features/src/sccache/) | ||
* [devcontainer-utils](features/src/utils/) | ||
* [rapids-build-utils](features/src/rapids-build-utils/) |