DS01 User Documentation
New here? Pick a path:
| Deploy in ~30 minutes → | Explore the full guide → |
|---|---|
| Get straight to a running GPU container: connect via SSH, set up your keys, and deploy your first containerised project. | Work through the docs properly — setup, key concepts, daily workflow, then intermediate and advanced topics at your own pace. |
Documentation Structure
docs/
├── getting-started/ Start here
├── core-guides/ Task-focused how-tos
├── intermediate/ Atomic commands, CLI flags, scripting
├── advanced/ Docker direct, terminal workflows, batch jobs
├── key-concepts/ Key Concepts to Understand (DS01-specific)
├── background/ Educational Computing Context (career skills)
├── reference/ Command quick reference
└── troubleshooting/ Fix problems
Separation of Concerns
- Practical: Getting Started → Core Guides → Intermediate → Advanced
- Conceptual: Key Concepts (DS01-specific) | Background (industry parallels)
- Reference: Commands Ref | Troubleshooting
Suggested Learning Paths
Path 1: Beginner
"I just want to work on my thesis"
Follow the 30-minute Quickstart — connect via SSH, set up your keys, and deploy your first GPU container.
Essential (do these first):
- Prerequisites - Check what you need
- First-Time Setup - SSH keys, accounts (~15 min)
- Containers & Images - Mental model (~5 min)
- Workspaces & Persistence - Where files live (~5 min)
- First Container - Get hands-on experience
- Daily Workflow - Your regular routine
- Help System - How to get unstuck
IDE Setup (optional, choose one):
- Jupyter Setup - For notebook users
- VS Code Remote - For code editors
- Launching Containers - Terminal-only workflows
Commands: user setup, project init, project launch, container deploy, container retire
Pro tip: Use --guided and --concepts flags while learning, they explain each step.
Path 2: Intermediate
"I want more control and efficiency" - you're comfortable with containers and want to automate repetitive tasks or understand system internals.
Core Understanding:
- Command Hierarchy - How commands are organised
- Container States - created, running, stopped, removed
- Atomic Commands - Single-purpose fine-grained control
Practical Skills:
- CLI Flags & Options - Faster than interactive mode
- Shell Aliases - Custom command shortcuts
- Bash Scripting - Automate container workflows
- Python Scripting - Programmatic container management
Commands: container-create, container-start, container-stop, container-remove, image-update, image-delete
Path 3: Advanced
"I prefer Docker commands and terminal workflows" - you're comfortable with Linux/Docker, want maximum flexibility, or have specialized workload needs.
Docker & Container Mastery:
- Docker Direct - Using native Docker commands
- Complete Dockerfile Guide - Advanced layering, optimization
- Container States Deep Dive - Full lifecycle understanding
Terminal & Development:
- Terminal Workflows - vim/tmux development patterns
- Advanced SSH - SSH tunneling, X11 forwarding, port mapping
- Shell Aliases & Custom Commands - Personalize your workflow
Specialized Workloads:
- Batch Jobs & Non-Interactive Execution - Training scripts, cron jobs
- Efficiency Tips - Performance optimization, resource tricks
Conceptual Documentation
DS01 has two types of conceptual documentation with different purposes:
- Key Concepts - these are practical DS01-specific guides
- Background Knowledge - these are more theoretically-oriented primers on basic CS principles & industry parallels informaing DS01's design
| Key Concepts | Background Knowledge |
|---|---|
| ~20 min total | ~1+ hour total |
| Containers and Images — Why do packages disappear? Why rebuild images? | Containers & Docker — Kubernetes, CI/CD, microservices |
| Ephemeral Containers — Why are containers temporary? Will I lose work? | Servers & HPC — AWS, GCP, cloud computing |
| Workspaces and Persistence — Where are my files? What persists? | Linux Basics — Any server/cloud work |
| Python Environments — Do I need venv/conda? | Industry Parallels — Direct cloud platform preparation |
See full overviews: Key Concepts | Background
Practical Guides
Step-by-step instructions for common tasks:
- Daily Workflow - Core routine
- Custom Images - Install your own packages
- GPU Usage - Request, monitor, release GPUs
- Long-Running Jobs - Overnight training
- Jupyter Setup - Jupyter Lab with SSH tunnels
- VSCode Remote - Remote development