Commit bc2cb94
authored
fix(docker): combine pixi installs into single RUN to prevent disk-full (#206)
## Summary
- Combines the three separate `RUN pixi install` commands back into a
single `RUN`
- Separate RUNs create overlay layers that duplicate shared conda
packages (numpy, CUDA libs, etc.) across environments -- measured **~37
GB** (3 layers) vs **~14 GB** (1 layer)
- `ubuntu-latest` non-deterministically provisions runners with 72 GB or
145 GB disks. On 72 GB runners, the split-RUN approach exceeds available
space during build
### Root cause investigation
The split was introduced in #204 for better layer caching. However, the
three pixi environments share many conda packages, and overlay layers
store full copies of files per layer. This ~23 GB overhead pushes the
build past the disk limit on smaller runners.
Disk usage measured via `df -h` inside Docker build steps:
| Metric | Split RUN (3 layers) | Single RUN (1 layer) |
|--------|---------------------|---------------------|
| boltz | 8 GB | 8 GB |
| protenix | 12 GB (new layer) | 4 GB (shared pkgs deduped) |
| rf3 | 12 GB (new layer) | 2 GB (shared pkgs deduped) |
| **Total pixi disk** | **~37 GB** | **~14 GB** |
## Test plan
- [x] Verified split-RUN fails on 72 GB runners (jobs 70663224672,
70670232201)
- [x] Verified single-RUN disk usage via df -h debugging (job
70682099334)
- [x] Confirmed checkpoint image unchanged since March 25 (same SHA
across all builds)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **Chores**
* Streamlined the deployment build process by consolidating multiple
environment setup commands into a single optimized layer, resulting in
improved build performance, reduced container image overhead, better
dependency caching efficiency, and enhanced operational efficiency
during containerization and deployment cycles while maintaining full
functionality.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->1 parent 41512b1 commit bc2cb94
1 file changed
Lines changed: 7 additions & 4 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
113 | 113 | | |
114 | 114 | | |
115 | 115 | | |
116 | | - | |
117 | | - | |
118 | | - | |
119 | | - | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
120 | 123 | | |
121 | 124 | | |
122 | 125 | | |
| |||
0 commit comments