refactor: restructure Docker images with modular architecture#121
Draft
cmagina wants to merge 1 commit intoredhat-et:mainfrom
Draft
refactor: restructure Docker images with modular architecture#121cmagina wants to merge 1 commit intoredhat-et:mainfrom
cmagina wants to merge 1 commit intoredhat-et:mainfrom
Conversation
Replace monolithic Dockerfiles with a modular base + variant approach: New Dockerfiles: - dockerfiles/Dockerfile: Base image with common dependencies - dockerfiles/Dockerfile.cpu: CPU-only variant - dockerfiles/Dockerfile.cuda: NVIDIA CUDA variant - dockerfiles/Dockerfile.rocm: AMD ROCm variant Removed Dockerfiles: - dockerfiles/Dockerfile.gosu: Now integrated into base Dockerfile - dockerfiles/Dockerfile.llvm: Replaced by setup_llvm.sh script - dockerfiles/Dockerfile.triton: Replaced by CUDA variant - dockerfiles/Dockerfile.triton-amd: Replaced by ROCm variant - dockerfiles/Dockerfile.triton-cpu: Replaced by CPU variant Benefits: - Reduces code duplication across variants - Makes it easier to maintain and update dependencies - Leverages the modular setup scripts from PRs redhat-et#115-120 - Provides clearer separation between base and variant-specific concerns This restructuring builds on the modular script architecture and enables better maintainability going forward. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
cmagina
added a commit
to cmagina/triton-dev-containers
that referenced
this pull request
Feb 7, 2026
Update both the root Makefile and .devcontainer/Makefile to support the new modular architecture: Root Makefile changes: - Restructure with clear sections (system, buildtime, versions, naming, runtime) - Add new image naming: base, cpu, cuda, rocm (replacing old triton-* names) - Add comprehensive runtime configuration options for all frameworks - Add support for INSTALL_* variables for modular framework setup - Add new build targets for base, cpu, cuda, rocm images - Add new run targets for all framework/variant combinations - Improve documentation and organization .devcontainer/Makefile changes: - Update VARIANTS to use new naming: cpu, cuda, rocm - Update clean targets for new generated file names Benefits: - Clearer organization with well-defined sections - Support for new modular setup scripts - More flexible runtime configuration - Better naming that reflects actual hardware support - Improved maintainability This modernization integrates with the new Dockerfiles from PR redhat-et#121 and leverages the modular scripts from PRs redhat-et#115-120. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
cmagina
added a commit
to cmagina/triton-dev-containers
that referenced
this pull request
Feb 7, 2026
Restructure VSCode devcontainer configurations to align with the new modular architecture and clearer naming conventions: New variant structure: - .devcontainer/cpu: CPU-only devcontainer - .devcontainer/cuda: NVIDIA CUDA devcontainer - .devcontainer/rocm: AMD ROCm devcontainer Base template changes: - Add create_user.template.sh (replaces user.sh) - Update devcontainer.template.json for new architecture - Rename postStartCommand.sh to postStartCommand.template.sh - Remove old user.sh Script updates: - Update bootstrap-devcontainer.sh for new structure - Update generate-devcontainers.sh for new variants Removed old variants: - .devcontainer/triton (replaced by cuda) - .devcontainer/triton-amd (replaced by rocm) - .devcontainer/triton-cpu (replaced by cpu) Benefits: - Clearer naming that reflects hardware support - Aligns with new Dockerfile structure from PR redhat-et#121 - Leverages modular setup scripts from PRs redhat-et#115-120 - Improves maintainability and consistency Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This file contains hidden or 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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR is part 7 of 11 in the rework modernization effort. It restructures the Dockerfiles to use a modular base + variant architecture.
Changes:
dockerfiles/Dockerfile(base image with common dependencies)dockerfiles/Dockerfile.cpu(CPU-only variant)dockerfiles/Dockerfile.cuda(NVIDIA CUDA variant)dockerfiles/Dockerfile.rocm(AMD ROCm variant)dockerfiles/Dockerfile.gosu(integrated into base)dockerfiles/Dockerfile.llvm(replaced by setup_llvm.sh)dockerfiles/Dockerfile.triton*(replaced by variants)Why this change?
The old Dockerfile structure had significant duplication and mixed concerns. This modular approach:
Testing:
Dependencies:
Blocks:
🤖 Generated with Claude Code