PSTAT 234 (Fall 2025)
University of California, Santa Barbara
.devcontainer/devcontainer.json.devcontainer/Containerfile (or Dockerfile)
Can you explain the diagram above?
Jetstream2 VM Filesystem
Assume project files are in /home/exouser/my-project/ on JS2VM and mounted to /home/jovyan/work/ in the container,
/home/jovyan/work/ in the container are reflected in /home/exouser/my-project/ on JS2VM, and vice versa./home/exouser/my-project/README.md on JS2VM and /home/jovyan/work/README.md in the container are the same file.Container Filesystem is Ephemeral
In general, container filesystem is ephemeral. Other than files mounted from a persistent storage, changes to other files in the container are lost when the container is rebuilt or deleted.
Dockerfile or Containerfile defines the container image..devcontainer/Dockerfile changes container image definition.References
.devcontainer/devcontainer.json defines the container configuration..devcontainer/devcontainer.json changes container configuration.References
| Container URL | REGISTRY |
NAMESPACE |
IMAGE_NAME |
TAG |
|---|---|---|---|---|
docker.io/ubuntu:22.04 |
docker.io |
library |
ubuntu |
22.04 |
docker.io/intel/oneapi:latest |
docker.io |
intel |
oneapi |
latest |
quay.io/jupyter/r-notebook:r-4.4.2 |
quay.io |
jupyter |
r-notebook |
r-4.4.2 |
nvcr.io/nvidia/pytorch:24.12-py3 |
nvcr.io |
nvidia |
pytorch |
24.12-py3 |
Exercises
tmux by modifying Dockerfile and rebuild the container.FROM image to another Jupyter Docker ImageGitHub Copilot can assist you in writing and modifying your development container configuration files. You can use it to:
Containerfile or devcontainer.json.