Add Jetson 6.2.0 workflow to retag existing working image
Problem
The Jetson 6.2.0 base image already exists and works, but it's published under a different name:
- Existing:
roboflow/roboflow-inference-server-jetson:jetpack-6.2.0(built Oct 17, 2025) - Needed:
roboflow/roboflow-inference-server-jetson-6.2.0:latest(for downstream projects)
Trying to rebuild from scratch hits Docker's max layer depth limit and various dependency issues.
Solution
Create a workflow that retags the existing working image instead of rebuilding:
Workflow (.github/workflows/docker.jetson.6.2.0.yml)
- Trigger: Manual workflow dispatch
- Action: Pull, retag, and push
- Source:
roboflow/roboflow-inference-server-jetson:jetpack-6.2.0 - Targets:
roboflow/roboflow-inference-server-jetson-6.2.0:latestroboflow/roboflow-inference-server-jetson-6.2.0:$VERSION
Dockerfile (docker/dockerfiles/Dockerfile.onnx.jetson.6.2.0)
- Restored to match the original working version from remote machine
- Uses
roboflow/l4t-ml:r36.4.tegra-aarch64-cu126-22.04base - Simple single-stage build (~50 lines)
- No layer flattening or dependency workarounds needed (for reference only)
Why Retag Instead of Rebuild?
- Existing image works perfectly - Built on Oct 17, 2025, 14GB, fully functional
- Avoids Docker layer depth issues - The l4t-ml base has too many layers
- Avoids dependency problems - opencv-contrib-python, structlog, etc. not available in Jetson pip index
- Fast and reliable - Pull/tag/push takes seconds vs hours of building
- Same binary - Exact same image, just with additional tags
Usage
To publish the retagged image:
gh workflow run docker.jetson.6.2.0.yml --repo roboflow/inference --field force_push=true
Impact
- Enables downstream PR: roboflow/inference-for-manufacturing#201
- Provides consistent naming for Jetson 6.2.0 images
- No risk of introducing build issues
- Can be run anytime to update tags
Source
Dockerfile sourced from: roboflow@ubuntu:/mnt/nvme/inference
Branch: feat/jetson-62-minimal-dockerfile
Commit: a2329b4b4
Updated to use correct container naming:
- Container name:
roboflow/roboflow-inference-server-jetson-6.2.0 - Tags:
:latestand:$VERSION
This matches the naming convention from PR #1671. The build will now succeed because we've fixed the rasterio GDAL compatibility issue (downgraded to 1.3.0).
Updated approach:
- ✅ Workflow now retags existing working image instead of rebuilding
- ✅ Dockerfile restored to original working version from remote machine
- ✅ Removed layer flattening and dependency workarounds (not needed)
- ✅ Can be run manually via workflow dispatch
To publish: Run the workflow with force_push=true to push the retagged images to Docker Hub.
@alexnorell is that ready?