Data science runtime for cloud GPUs
- Industry
- Data infrastructure
- Type of work
- DevOps / MLOps
- Period
- 2026
Architecture
- Access nginx → JupyterLabsshdwebsockets
- Analysis uv in an isolated venvJupyterLabDuckDBclaude · gemini · codex
- Operations tini (PID 1)persistent cronidle watchdog
- Data rcloneawscligsutilhuggingface-cli
- Base ubuntu:24.04ornvidia/cuda runtime
Goal
Get the same analysis environment on any rented instance, without reinstalling tools each time or paying for idle hours.
What I did
- Wrote a single Dockerfile parameterized by base image: Ubuntu for CPU or CUDA runtime for GPU.
- Put JupyterLab behind nginx in an isolated uv environment, plus DuckDB and AI CLIs.
- Added a watchdog that shuts the instance down when idle, and a persistent crontab.
- Published the images to GHCR with GitHub Actions.