30-Minute Quickstart
Step 1: Connect via SSH
NB: requires you are connected via Hertie campus Wi-Fi or VPN connection. Contact IT service desk if you need VPN access.
From your laptop terminal:
ssh <your-username>@hertie-school.lan@10.1.23.20
Your username depends on your account type:
| Account type | Username format | Example |
|---|---|---|
| Master's student | <student-id>@hertie-school.lan | 212345@hertie-school.lan |
| PhD student | <student-id>@hertie-school.lan | 197968@hertie-school.lan |
| Staff / faculty | <firstname>.<lastname>@hertie-school.lan | j.smith@hertie-school.lan |
Note:
@hertie-school.lanis the canonical internal domain and works for all account types. You can also use your email domain (e.g.@students.hertie-school.org,@phd.hertie-school.org, or@hertie-school.orgfor staff) — these resolve to@hertie-school.lanautomatically.
If you don't have SSH keys set up, you'll be prompted for your usual Hertie Microsoft password.
Step 2: Run First-Time Setup
Once connected, run:
user-setup
This interactive GUI will:
- Generate & configure SSH keys (for DS01 & GitHub)
- Configure VS Code (necessary extensions & auto-SSH)
Then run:
project-init --guided
This interactive GUI will:
- Create your first project workspace
- Setup best-practice DS directory structure
- Auto-build project docs (README.md, requirements.txt, Dockerfile, pyproject.toml)
- Initialise git
- Build a custom Docker image1
- Deploy your first container
Then run:
project-launch --guided
This interactive GUI will:
- Scan available projects
- Build an executable Docker image from the project's Dockerfile (or otherwise first define a Dockerfile)
- Deploy a container instance of the image onto a GPU
- Either attach the terminal to running container, or start in background
You have successfully deployed a container!
Step 3: Start Working
After setup completes, you'll be inside a container. Check that GPU is available:
nvidia-smi
You should see GPU information. Now you can:
# Check Python
python --version
# Check PyTorch (or TensorFlow)
python -c "import torch; print(torch.cuda.is_available())"
# Navigate to your workspace (if not already)
cd /workspace
# If you have a remote repo you wish to clone (otherwise project-init configures for you)
git clone your-repo
# Start running scripts in your project directory!
NB: /workspace inside the container is your project directory on the host (~/workspace/<project-name>/). This is a bind mount; your files persist even after retiring the container.
Step 3.5: Attach Terminal/IDE to Running Container
If you are comfortable with working from the terminal project launch will offer you the option to directly attach your terminal to the deployed container (or add --open flag to the launch command).
If you are more comfortable working in an IDE you will need the following 3 extensions in your IDE (here, presuming VS Code)
- SSH Remote
- Dev Containers
- Container Tools
Once installed: Cmd + Shift + P to open the Command Pallete, and type Dev Containers: Attach to Running Container.... This will open up a new window attached to the running container!
NB: this ^^^ is all walked through by user setup CLI.
Step 4: Exit and Retire Container
When done with the current job:
# To exit the container from inside an attached terminal:
exit
# If you have a container running in background (terminal not attached):
container retire --guided
That's it. Files saved in /workspace are permanent.
Next Steps
See Index & Learning Paths for entry points, or jump right in:
I want to...
-
→ Set up DS01 for the first time - Run
user setup -
→ First Container Guide for step-by-step
-
→ Understand the daily workflow - Deploying & retiring containerised compute environments with ease
-
→ Create additional projects -
project init -
→ Build a custom environment - Add packages to your Dockerfile
-
→ Set up Jupyter notebooks - JupyterLab setup
-
→ Connect VS Code - Connect your IDE
-
→ Fix a problem - Common errors and solutions
Further Refs:
Quick Reference for all commands