Sessions¶
A Session is a user-owned compute environment launched from a Container Image on a Science Platform Server. Choose the Session Kind that matches the way you want to work:
| Kind | Interface | Typical use |
|---|---|---|
notebook |
JupyterLab | Python analysis and interactive notebooks |
desktop |
Browser desktop | CASA and other graphical applications |
carta |
CARTA | Image and spectral-cube exploration |
firefly |
Firefly | Tables and image visualization |
contributed |
Application-specific | Community-maintained tools |
headless |
No interactive interface | Batch commands and pipelines |
See the individual guides for Notebook, Desktop, CARTA, Firefly, Contributed, and Batch workflows.
Start a Session¶
You can launch a Session from the Science Portal, from the CLI, or with the Python client. The CLI uses a Container Image and Session Kind as positional arguments:
canfar login cadc
canfar image ls --kind notebook
canfar create notebook IMAGE_NAME --name analysis
canfar ps --all
Use canfar server ls and canfar server use NAME when more than one Science
Platform Server is available for the active Identity Provider. The image list
is the source of truth for image names and supported kinds; examples are
illustrative tags, not a guarantee that every deployment publishes them.
Lifecycle and status¶
Creation returns Session IDs before the Session is necessarily ready. A Session
can be Pending while it waits for admission, resources, image pulls, or
initialization, then become Running or a terminal state. Queue order and
resource policy are deployment-owned.
canfar ps --all
canfar info SESSION_ID
canfar events SESSION_ID
canfar logs SESSION_ID
The default canfar ps view shows Pending and Running Sessions; use
--all to include terminal states as well. canfar open only opens a ready
Session. Delete a Session when its work is complete:
canfar delete SESSION_ID
Storage boundary¶
Sessions are temporary compute environments. A Session can use mounted
/arc/home/<user> and /arc/projects/<project> paths when the deployment
provides them, plus /scratch for fast Session-local work. /scratch is
deleted with the Session. Save scripts, inputs, and results under /arc or a
persistent VOSpace Service before stopping or deleting the Session.
For remote VOSpace data, use canfar data or the explicit Python storage helper. Do not assume that opening a remote object provides server-side random access; stage once when a path-oriented tool needs a local filename.
Resource requests¶
Omit --cpu and --memory for the platform's flexible request, or set values
based on measured workload needs. Fixed requests can wait longer when matching
capacity is unavailable. For headless workloads, see the batch queue and
troubleshooting guide.
Request ranges, Session lifetime, the per-user Session limit, and how to see what a running Session was granted are in Session limits and resources.
Session APIs¶
The Python client exposes synchronous and asynchronous Session operations. The public library returns ordinary Python values; it does not replace the mounted filesystem or add a second storage adapter. Start with the Python client guide and Session reference.
Some interactive applications expose their own API after the Session reaches
Running. Consult the application documentation linked from its individual
guide rather than assuming that every Session has an HTTP API.