콘텐츠로 이동

워크스페이스 & 템플릿

워크스페이스는 공유 GPU 워크스테이션에서 사용자의 Linux 계정으로 실행되는 컨테이너입니다. CPU, 메모리, GPU, 디스크마다 개별 제한이 적용됩니다. 사용자 또는 관리자가 중지하지 않는 한 계속 실행됩니다. 현재 버전에서는 유휴 자동 중지 기능이 없습니다.

템플릿은 소프트웨어 환경을 지정합니다. 워크스페이스를 만들 때 템플릿을 하나 선택하며 생성 후에는 변경할 수 없습니다. 템플릿에는 리소스 기본값이 들어 있어 생성 전에 조정할 수 있습니다.

LabPod에는 다음 글로벌 템플릿이 기본 제공됩니다:

템플릿포함 내용GPU
PyTorch JupyterLabJupyterLab + PyTorch, CUDA 지원; 설치 후 TensorBoard 런처 사용 가능기본 선택
TensorFlow JupyterLabJupyterLab + TensorFlow; TensorBoard 런처 포함기본 선택
Data Science JupyterLab (CPU)NumPy, SciPy, pandas, scikit-learn, matplotlib없음
Code Server브라우저 기반 VS Code, Open VSX 확장 지원선택

기본 JupyterLab 템플릿들은 LabPod이 빌드해 GitHub Container Registry(ghcr.io/labpod/*)로 배포하는 공개 이미지를 사용합니다. PyTorch JupyterLabghcr.io/labpod/pytorch-jupyter(CUDA 태그 cu121/cu126/cu129, 첫 시작 시 호스트 NVIDIA 드라이버·GPU 에 맞춰 자동 선택 — 관리자가 특정 태그로 고정 가능), TensorFlow JupyterLabghcr.io/labpod/tensorflow-jupyter:cu125(CUDA를 자체 번들해 구드라이버에서도 동작), Data Science JupyterLab (CPU)ghcr.io/labpod/scipy-jupyter:py312(CPU 전용)를 씁니다.

이 밖에도 십여 개의 템플릿이 비활성 상태로 함께 제공됩니다. conda·uv 파이썬 워크스페이스, LLM/Hugging Face, ComfyUI, R과 RStudio, MATLAB, 병렬 프로그래밍, PyTorch 데모 쇼케이스 등이 있습니다. 관리자는 필요한 이미지를 빌드하고 해당 약관에 동의한 뒤 활성화할 수 있습니다. 각 템플릿의 구성은 기본 제공 템플릿 문서를 참고하세요.

관리자가 추가 템플릿을 등록했을 수 있으며, 사용자가 직접 만들 수도 있습니다. 아래를 참고하세요.

템플릿 선택기와 리소스 설정이 있는 새 워크스페이스 폼

  1. 워크스페이스 홈 페이지에서 만들기를 클릭합니다.
  2. 템플릿을 선택합니다. 설명이 있으면 펼쳐집니다.
  3. 시작하기 전에 템플릿 이미지가 있는지 확인합니다. 워크스페이스를 시작할 때는 없는 이미지를 pull하거나 build하지 않습니다. 전역 템플릿이라면 관리자에게 준비를 요청하세요.
  4. 기본값이 맞지 않는 경우 고급 섹션에서 CPU, 메모리, GPU를 조정합니다.
  5. 필요에 따라 폴더 및 환경 변수를 설정합니다.
  6. 만들기를 클릭합니다.

기본적으로 ~/work 디렉터리가 모든 워크스페이스에서 /work로 매핑됩니다. 고급 → 폴더 섹션에서 다음을 추가로 포함할 수 있습니다:

  • 공유 프리셋: 관리자가 설정한 경로(데이터셋, 모델 가중치 등)로 기본적으로 모두 체크되어 있습니다.
  • 사용자 지정 폴더: 읽기 권한이 있는 호스트의 임의 디렉터리. 워크스페이스별로 저장되며 매번 시작 시 다시 적용됩니다.

워크스페이스 설정에서 폴더를 변경하면 다음 시작 시에 적용됩니다.

워크스페이스가 시작될 때 주입할 NAME=value 쌍을 설정합니다. HF_HOME 재정의, API 키 설정, CUDA 동작 조정 등에 유용합니다. 설정 → 환경에서 편집하며 다음 시작 시 적용됩니다.

워크스페이스 구성을 자신만의 템플릿으로 저장할 수 있습니다. 번들 파일로 내보낸 뒤 나중에 다시 가져오면 됩니다. 사용자 소유 템플릿은 템플릿 목록의 내 템플릿 아래에 표시되며 계정에만 공개됩니다.

작업설명
만들기워크스페이스를 등록합니다
시작podman run으로 컨테이너를 시작하고 모든 설정을 적용합니다. 없는 이미지를 pull하거나 build하지 않습니다
중지컨테이너에 SIGTERM을 보낸 후 단계적으로 종료합니다
삭제컨테이너를 제거하고 GPU 슬롯을 해제합니다. 아래 참고

중요한 데이터는 모두 유지됩니다:

  • /work: 호스트 마운트이므로 컨테이너 내부가 아닌 호스트에 저장되어 유지됩니다.
  • 워크스페이스 홈 (/home/<사용자명>): 호스트의 워크스페이스별 디렉터리가 백업으로 사용되므로 conda 환경, pip 설치, dotfiles, 셸 기록 모두 중지/시작 간에 유지됩니다.
  • 관리자가 설정한 공유 마운트 내의 파일.

컨테이너 내부에서 실행 중인 프로세스는 유지되지 않습니다. 커널, 학습 작업, 터미널 세션이 모두 종료됩니다.

삭제하면 워크스페이스의 구성과 컨테이너가 제거됩니다. 워크스페이스별 홈 디렉터리는 삭제되지 않고 계정 아래의 복구 가능한 위치로 보관(archive)되므로, 그 안의 내용이 필요하면 관리자에게 문의하세요. /work 디렉터리는 건드리지 않습니다. /work는 워크스페이스보다 오래 지속되는 호스트 디렉터리입니다.

삭제 대화 상자에서 워크스페이스 이름을 입력하고 확인 체크박스를 선택해야 버튼이 활성화됩니다. 워크스페이스 삭제는 소유자만 할 수 있습니다. 관리자는 다른 사용자의 워크스페이스를 삭제할 수 없습니다. 다른 사용자의 워크스페이스에서 자원을 회수하려면 관리자가 강제 중지할 수는 있지만, 강제 중지가 삭제를 뜻하지는 않습니다(생명주기 참고).

워크스페이스가 중지된 상태에서 상세 페이지의 설정을 클릭합니다. 다음을 변경할 수 있습니다:

  • 리소스: CPU, 메모리, GPU 수 (GPU 모드는 생성 시 고정됩니다).
  • 폴더: 호스트 디렉터리 마운트를 추가하거나 제거합니다.
  • 환경: 환경 변수를 추가, 제거, 편집합니다.

모든 변경 사항은 다음 시작 시 적용됩니다.

워크스페이스를 로그인 화면에 고정하기

섹션 제목: “워크스페이스를 로그인 화면에 고정하기”

워크스페이스 상세 페이지의 로그인 시 열기 버튼(핀 아이콘)을 클릭하면 로그인 후 워크스페이스 목록을 건너뛰고 해당 워크스페이스가 바로 열립니다. 사용자당 하나만 설정할 수 있으며, 다시 클릭하면 해제됩니다.