추가 앱 & 포트
워크스페이스 상세 페이지의 추가 앱 섹션에서 내장 런처에 없는 서비스를 노출할 수 있습니다. 각 서비스에는 세션 쿠키로 보호되는 자체 링크가 붙습니다.
동작 방식
섹션 제목: “동작 방식”포트를 선언하면 LabPod가 풀에서 포트 번호를 예약하고 리버스 프록시로 매핑합니다.
그런 다음 워크스페이스 안에서 앱을 시작해 해당 포트에 바인딩합니다. LabPod는 이 앱을
/ws/<workspace-id>/_user/<name>/ 경로로 제공합니다.
사용자 선언 포트와 템플릿 런처는 서로 다른 URL 네임스페이스를 사용합니다. 따라서 사용자 앱과
런처의 이름이 같아도 충돌하지 않습니다. /ws/<workspace-id>/_user/jupyter/는 사용자 앱이고
/ws/<workspace-id>/jupyter/는 템플릿 런처입니다. 형식이 지정되지 않은 기존 사용자 포트
북마크는 새 경로의 별칭으로 동작하지 않습니다. 워크스페이스 페이지에서 앱을 만들거나 열어
형식이 지정된 URL을 사용하십시오.
앱 추가를 클릭하면 링크가 즉시 활성화되고 워크스페이스를 재시작할 필요가 없습니다. 포트 선언은 중지/시작 후에도 유지되고 워크스페이스가 다시 시작될 때 LabPod가 프록시를 재연결합니다.
앱 추가하기
섹션 제목: “앱 추가하기”- 워크스페이스 상세 페이지에서 추가 앱으로 스크롤하고 앱 추가를 클릭합니다.
- 프리셋 (TensorBoard, Gradio, Streamlit, FastAPI)을 선택하거나 사용자 지정 이름을 입력합니다.
- 이름은 소문자, 숫자, 대시만 사용할 수 있습니다 (예:
gradio,my-app).
- 이름은 소문자, 숫자, 대시만 사용할 수 있습니다 (예:
- 추가를 클릭합니다.
LabPod가 즉시 다음 링크를 표시합니다:
http://<host>:<port>/ws/<workspace-id>/_user/<name>/
워크스페이스 내부에서 앱 시작하기
섹션 제목: “워크스페이스 내부에서 앱 시작하기”LabPod 터미널을 열고 LabPod가 할당한 포트에 바인딩해 앱을 시작합니다. 포트 번호는 워크스페이스
상세 페이지에서 확인하거나 앱 추가 대화 상자의 고급 섹션에 표시된 슬롯 인덱스로
환경 변수 $LABPOD_USER_PORT_<n>에서 읽습니다.
예를 들어 Gradio 앱을 할당된 포트에서 실행하려면:
python app.py --server-port $LABPOD_USER_PORT_1Streamlit의 경우:
streamlit run app.py --server.port $LABPOD_USER_PORT_1이제 추가 앱 카드의 열기를 클릭하면 새 브라우저 탭에서 열립니다.
제한 사항
섹션 제목: “제한 사항”- 워크스페이스당 최대 8개의 추가 앱을 사용할 수 있습니다 (풀 크기).
- 모든 슬롯이 차 있으면 하나를 삭제할 때까지 앱 추가 버튼이 비활성화됩니다.
- 포트 선언은 워크스페이스별입니다. 다른 워크스페이스에는 자체 풀이 있습니다.
앱 삭제하기
섹션 제목: “앱 삭제하기”앱 카드의 삭제를 클릭합니다. 포트는 풀로 돌아갑니다. 워크스페이스 안의 앱 프로세스는 직접 중지할 때까지 계속 실행됩니다.