Persistence in SciServer Containers

Your Compute containers are designed to be ephemeral. This means that while you have a powerful environment to work in, most changes made to the system (the “root” filesystem) are reset every time you restart or launch a new container.

To keep your work, configurations, and tools, you must use your Personal Storage Folders.

Personal Storage Folders

If you want personal data or configurations to survive a restart, or be accessible in multiple containers at a time, they must live in your Personal Storage Folders.

Anything outside the ~/workspace/ mounted folders is reset on every new container and every container restart. To maintain a consistent personalized workflow, you must place your configuration files in your personal storage folders. These are always available on new containers:

  • ~/workspace/Storage/$SCISERVER_USER_NAME/persistent/

  • ~/workspace/Temporary/$SCISERVER_USER_NAME/scratch/

Automating your environment: The .bashrc file

Since the root filesystem resets, you can use a .bashrc file in your persistent storage to automatically load tools, environment variables, or SSH keys upon login:

~/workspace/Storage/$SCISERVER_USER/persistent/.bashrc

The system automatically executes this file every time a container starts, allowing you to make your environment feel permanent. See the Shell Automation for more details on this.

Persistence Recipes

Depending on what you need to keep, follow the relevant guide below:

I want to persist…

Guide

Goal

The Automation Tool

Shell Automation

Learn how to manage the .bashrc file itself.

Python Libraries

Python Environments

Avoid reinstalling packages every session.

SSH Keys & Access

SSH and other configs

Keep your SSH keys and Git (or similar) configs without re-linking.