Before the seminar
Install Docker, download the hands-on folder and check that it runs
1 Prerequisites and setup
Complete this setup before attending the seminar, so that the hands-on time goes on the exercises rather than on installation. Allow 20–40 minutes, depending on your operating system and internet connection.
The hands-on part runs in Jupyter notebooks inside a ready-made Docker container: a packaged Linux environment with Python, PyTorch and the seminar’s code already installed. You do not need to install Python, Conda, Jupyter or any Python package.
1.1 What you need
- A laptop or desktop computer running a supported, up-to-date version of Windows, macOS or Linux, with at least 8 GB of memory and 3 GB of free disk space.
- An internet connection before the seminar. The container image is a one-off download of about 500 MB; the hands-on folder is about 41 MB.
- Permission to install applications on your computer. On an institution-managed computer, you may need help from your IT administrator.
- Docker, installed and running (Step 1).
You will use a terminal for a few commands, mainly to check Docker: - Windows: PowerShell (or Windows Terminal with a PowerShell tab). - macOS: Terminal (Applications → Utilities → Terminal). - Linux: your usual terminal application.
1.2 Step 1 — Install Docker
Docker runs the seminar’s computational environment in a container. Install Docker Desktop on Windows or macOS. On Linux, install Docker Engine, or Docker Desktop for Linux if you prefer a graphical application.
1.2.1 Windows 10/11
Docker Desktop uses the WSL 2 backend for the recommended Linux-container workflow.
Check that your Windows version supports WSL 2 and hardware virtualization is enabled in your computer’s BIOS/UEFI. Your institution’s IT team may need to help with managed computers.
Open PowerShell as Administrator.
Run:
wsl --installRestart Windows if prompted. Complete the first-time Ubuntu/WSL setup if Windows asks you to create a Linux username and password.
Open PowerShell and run:
wsl --update wsl --versionDownload Docker Desktop for Windows from the official Docker installation page.
Run the installer. Select the WSL 2 backend when prompted. Follow the installation wizard.
Start Docker Desktop from the Windows Start menu.
Accept the Docker terms and wait until Docker Desktop reports that its engine is running.
Keep Docker Desktop running while using the seminar repository.
If WSL 2 is already installed and working, you do not need to reinstall it. If your machine is managed by your institution and you cannot enable virtualization or install WSL 2, contact your IT administrator before the seminar.
1.2.2 macOS
- Check whether your Mac has an Apple silicon processor or an Intel processor:
- Open Apple menu → About This Mac.
- The Chip field indicates Apple silicon; the Processor field indicates Intel.
- Open the official Docker Desktop for Mac installation page.
- Download the installer for your processor type.
- Open the downloaded
.dmgfile. - Drag Docker to the Applications folder as directed.
- Open Docker from Applications.
- Accept the Docker terms and complete any first-run prompts.
- Wait until Docker Desktop reports that its engine is running.
1.2.3 Ubuntu Linux — Docker Engine
The following commands install Docker Engine and the Compose plugin from Docker’s official APT repository on supported Ubuntu releases (64-bit).
Open a terminal.
Remove conflicting distribution packages if they are installed:
sudo apt remove -y docker.io docker-compose docker-compose-v2 docker-doc podman-docker containerd runcIf some packages are not installed, APT may simply report that they could not be found.
Install prerequisites and add Docker’s official signing key:
sudo apt update sudo apt install -y ca-certificates curl sudo install -m 0755 -d /etc/apt/keyrings sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc sudo chmod a+r /etc/apt/keyrings/docker.ascAdd the official Docker repository:
sudo tee /etc/apt/sources.list.d/docker.sources <<EOF Types: deb URIs: https://download.docker.com/linux/ubuntu Suites: $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") Components: stable Architectures: $(dpkg --print-architecture) Signed-By: /etc/apt/keyrings/docker.asc EOFInstall Docker Engine, the CLI, container runtime, Buildx and the Compose plugin:
sudo apt update sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-pluginStart Docker and enable it at boot:
sudo systemctl enable --now dockerVerify that the service is active:
sudo systemctl status docker --no-pagerFor this seminar, the simplest reliable approach is to prefix Docker commands with
sudoon Linux, for examplesudo docker run --rm hello-worldandsudo ./start.sh. You can optionally configure non-root Docker access by following Docker’s Linux post-installation instructions. Be aware that membership in thedockergroup grants root-level privileges.
For distributions other than Ubuntu, follow Docker’s official Engine installation guide. Docker Desktop for Linux is also available; see the Linux Desktop installation guide.
1.3 Step 2 — Check that Docker works
Open a new terminal after installation. Docker Desktop must be running on Windows and macOS.
Run:
docker versionYou should see both a Client and a Server section. If the server section is missing or the command says it cannot connect to the Docker daemon, start Docker Desktop (Windows/macOS) or the Docker service (Linux).
Now run Docker’s test container:
docker run --rm hello-worldDocker should download a small image and print a message confirming that the installation works.
1.4 Step 3 — Download and start the hands-on folder
- Download
inundation-seminar-1.0.zip(about 41 MB) from Google Drive. The link opens a preview page: click the Download button (the arrow at the top right). Drive then says it cannot scan the file for viruses because it is large; choose Download anyway. - Unzip it somewhere convenient, for example your Documents folder. You get a folder
inundation-seminar-1.0.- Windows: right-click the zip and choose Extract All. Do not run the files from inside the zip.
- macOS: double-click the zip, or let Safari unzip it for you.
- Start it:
- Windows: open the folder and double-click
start.bat. A black terminal window opens and must stay open. If Windows SmartScreen warns about an unknown app, choose More info → Run anyway. - macOS: open a terminal in the folder. In Finder, right-click the folder and choose Services → New Terminal at Folder; or type
cd(with a space) in Terminal, drag the folder onto the window and press Return. Then run./start.sh. - Linux: open a terminal in the folder and run
./start.sh, orsudo ./start.shif you have not set up Docker for your user.
- Windows: open the folder and double-click
- The first start downloads the container image (about 500 MB), which takes a few minutes. Later starts take a few seconds and work offline. If Docker Desktop asks for permission to access the folder, allow it.
- A browser tab opens on JupyterLab. If it does not, open http://localhost:8888.
- In the file list on the left, open
notebooks, then01_solver.ipynb. Choose Run → Run All Cells. The notebook should finish in under a minute and show plots of a dam break and a small basin, with no red error messages. - To stop, close the browser tab and press Ctrl+C twice in the terminal window. On Windows, answer Y if asked “Terminate batch job?”. Anything you save stays in the folder.
The image works on Intel and AMD computers and on Apple-silicon Macs. The server is reachable only from your own computer, so it has no password.
1.4.1 What is in the folder
| Notebook | Chapter | What you do | Time |
|---|---|---|---|
01_solver.ipynb |
1 | Run the shallow-water solver on a dam break, a lake at rest and a small basin | 5 min |
02_pinn.ipynb |
2 | Train a physics-informed neural network on a travelling wave | 5 min |
03_neural_operators.ipynb |
3, 4 | Compare the trained FNO and PINO with the solver on scenarios they never saw | 5–8 min |
04_emulator.ipynb |
5 | Answer a what-if question with 200 runs at once, then train your own small FNO | 5–10 min |
The folder also holds the seminar’s dataset (80 scenarios) and the two trained models the notes report, so nothing has to be generated or trained before you start. During the seminar’s hands-on part we work through notebooks 3 and 4; notebooks 1 and 2 are a good warm-up beforehand.
1.4.2 If something goes wrong
- “Docker is not running”: start Docker Desktop and wait until it reports that the engine is running.
- “port is already allocated”: another program uses port 8888. On macOS and Linux run
PORT=8890 ./start.sh; on Windows, in PowerShell in the folder, run$env:PORT=8890; .\start.bat. Then open http://localhost:8890. - macOS, “permission denied” for
start.sh: runbash start.shinstead. - Linux, “permission denied” from Docker: run
sudo ./start.sh. - A notebook stops with an error or hangs: choose Kernel → Restart Kernel and Run All Cells.
- The download of the image fails part-way: run the start script again; it carries on from where it stopped.
1.5 Pre-seminar readiness checklist
Before the seminar, make sure you can tick off every item:
If any step fails, note the exact command and the complete error message and bring them to the seminar. Please do not wait until the seminar begins to install Docker or download the folder: the container image alone is about 500 MB, too much for a shared network on the day.