chore(docker): remove docker-compose, use individual build/run commands

Replace docker-compose.benchmark.yml with per-image docker build/run
instructions. Each benchmark is built and tested independently via
--build-arg BENCHMARK=<name> on Dockerfile.benchmark.

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Pepijn
2026-03-20 21:45:32 -07:00
parent 39cf11d5dc
commit e80c9e6270
2 changed files with 7 additions and 74 deletions
-68
View File
@@ -1,68 +0,0 @@
# Benchmark evaluation services for LeRobot.
#
# Each service builds Dockerfile.benchmark with the matching BENCHMARK arg,
# giving an isolated environment per benchmark suite.
#
# Usage:
# Build all: docker compose -f docker/docker-compose.benchmark.yml build
# Build one: docker compose -f docker/docker-compose.benchmark.yml build libero
# Run smoke tests: docker compose -f docker/docker-compose.benchmark.yml run --rm libero bash docker/smoke_test_benchmark.sh
# Interactive: docker compose -f docker/docker-compose.benchmark.yml run --rm libero
x-benchmark-base: &benchmark-base
build:
context: .
dockerfile: docker/Dockerfile.benchmark
image: lerobot-benchmark-${BENCHMARK:-libero}
environment:
- MUJOCO_GL=egl
- DEVICE=cuda
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: 1
capabilities: [gpu]
volumes:
# Mount HuggingFace cache from host so model weights are not re-downloaded each run.
- ${HF_HOME:-~/.cache/huggingface}:/home/user_lerobot/.cache/huggingface
stdin_open: true
tty: true
services:
libero:
<<: *benchmark-base
image: lerobot-benchmark-libero
build:
context: .
dockerfile: docker/Dockerfile.benchmark
args:
BENCHMARK: libero
libero_plus:
<<: *benchmark-base
image: lerobot-benchmark-libero-plus
build:
context: .
dockerfile: docker/Dockerfile.benchmark
args:
BENCHMARK: libero_plus
robomme:
<<: *benchmark-base
image: lerobot-benchmark-robomme
build:
context: .
dockerfile: docker/Dockerfile.benchmark
args:
BENCHMARK: robomme
robocasa:
<<: *benchmark-base
image: lerobot-benchmark-robocasa
build:
context: .
dockerfile: docker/Dockerfile.benchmark
args:
BENCHMARK: robocasa
+7 -6
View File
@@ -1,13 +1,14 @@
#!/usr/bin/env bash
# Smoke-test a benchmark container: verifies imports and CLI entry-points.
#
# Run inside the container (BENCHMARK env var must be set):
# bash docker/smoke_test_benchmark.sh
# Build and run for a specific benchmark:
# docker build --build-arg BENCHMARK=libero -f docker/Dockerfile.benchmark -t lerobot-benchmark-libero .
# docker run --gpus all --rm -e BENCHMARK=libero lerobot-benchmark-libero bash docker/smoke_test_benchmark.sh
#
# Or run all benchmarks via docker compose:
# for svc in libero libero_plus robomme robocasa; do
# docker compose -f docker/docker-compose.benchmark.yml run --rm "$svc" \
# bash docker/smoke_test_benchmark.sh
# Test all benchmarks individually:
# for b in libero libero_plus robomme robocasa; do
# docker build --build-arg BENCHMARK=$b -f docker/Dockerfile.benchmark -t lerobot-benchmark-$b .
# docker run --gpus all --rm -e BENCHMARK=$b lerobot-benchmark-$b bash docker/smoke_test_benchmark.sh
# done
set -euo pipefail