Skip to content

Feat: Pre-built Docker images for DimOS modules #1173

@JalajShuklaSS

Description

@JalajShuklaSS

Summary

Replace module-specific Dockerfiles with pre-built images hosted on GHCR for faster deployment.

Context

Currently, each Docker module (like GraspGen) has its own Dockerfile that builds from scratch. This works for development but has drawbacks:

  • Long build times (15-30+ min for CUDA compilation)
  • Every user rebuilds the same image
  • No version control for built images intentional for the current isolation

Proposed Solution for Future Iteration

  1. Create a generic DimOS base image with CPU/GPU variants:

    • ghcr.io/dimensionalos/dimos-base:cpu-py310
    • ghcr.io/dimensionalos/dimos-base:gpu-cuda128-py310
  2. Pre-build module images that extend the base:

    • ghcr.io/dimensionalos/graspgen:v1.0
  3. Update DockerModuleConfig to support pulling pre-built images:

    docker_image="ghcr.io/dimensionalos/graspgen:v1.0"
    docker_file=None  # No local build needed

Requirements

  • Design base image variants (CPU/GPU, Python versions)
  • Set up GitHub Actions CI/CD for image publishing
  • Handle model checkpoints (LFS or separate download)
  • Version tagging strategy
  • Documentation for extending base images

Notes

This is deferred until the Docker integration stabilizes. Current Dockerfile approach is the baseline implementation.

Related PR: #1119 (GraspGen Docker integration)

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions