콘텐츠로 이동

첫 개발 환경 만들기

프로젝트에 접근한 뒤, 가장 먼저 해야 할 일은 코드를 작성할 개발 환경을 만드는 것입니다. 이 장에서는 스토리지 볼륨을 생성하고, 앱 카탈로그에서 Code Server를 배포하여 브라우저에서 바로 코딩을 시작하는 과정을 안내합니다.

사전 조건

  • Runway에 로그인한 상태여야 합니다. 로그인 방법
  • 프로젝트에 접근 권한 및 멤버 이상의 역할을 부여받아야 합니다. 프로젝트 접근
  • ML/AI 개발 프로세스를 수행하려면 프로젝트에서 멤버 이상의 역할이 필요합니다. 내 계정 역할 확인
1. 스토리지 볼륨 생성        ← 데이터를 저장할 공간 확보
   ↓
2. Code Server 배포      ← 앱 카탈로그로 최소 설정만 적용하여 배포
   ↓
3. 브라우저에서 접속         ← VS Code 환경에서 바로 코딩 시작

1단계: 스토리지 볼륨 생성

Code Server에서 작성한 코드와 데이터를 보관할 저장 공간을 먼저 만듭니다.

프로젝트 > 스토리지 메뉴

  1. 프로젝트에서 스토리지 메뉴로 이동합니다.

    스토리지 생성-01

  2. 화면 오른쪽 상단의 + 생성 버튼을 클릭합니다.

  3. 볼륨의 고유 식별자로 사용될 볼륨 ID(3-63자, 소문자, 숫자, 하이픈(-))를 지정합니다.

    스토리지 생성-02

  4. 다음과 같이 설정합니다.

    항목 설정 예시 설명
    스토리지 클래스 ceph-block 단일 Pod 전용 블록 스토리지
    접근 모드 ReadWriteOnce 한 개의 애플리케이션에서 읽기/쓰기
    크기 10 GiB 코드와 데이터를 저장할 용량

    스토리지 클래스와 접근 모드 선택 기준

    • ceph-block + ReadWriteOnce — 한 개의 애플리케이션에서만 사용하는 개인 작업 공간에 적합합니다.
    • 여러 애플리케이션에서 데이터를 공유하려면 ceph-filesystem + ReadWriteMany를 선택하세요.
    • 다른 옵션에 대한 자세한 내용은 스토리지 볼륨 옵션에서 확인하세요.
  5. 생성 버튼을 클릭합니다.


2단계: Code Server 배포

앱 카탈로그에서 Code Server를 선택하여 배포합니다.

프로젝트 > 카탈로그 메뉴

  1. 프로젝트에서 카탈로그 메뉴로 이동합니다.

    code-server-배포-01

  2. 카탈로그 목록에서 Code server 카드를 클릭합니다.

  3. 화면 오른쪽 상단의 + 애플리케이션 생성 버튼을 클릭합니다.

    code-server-배포-02

  4. 기본 정보를 입력합니다.

    code-server-배포-03

    • 이름: 목록에 표시될 이름 (예시)code-server-003
    • ID: 시스템 고유 식별자(3-53자, 영문 소문자, 숫자, 하이픈(-)만 사용 가능) (예시)csef0227
    • 설명: 용도 메모 (선택)

    • 구성 영역은 카탈로그가 자동으로 설정합니다. 헬름 리포지토리, 차트, 버전을 별도로 수정할 필요가 없습니다.

  5. code-server 접속 링크를 생성하기 위해 리소스 현황 버튼을 클릭합니다.

    code-server-배포-04

  6. 리소스 현황 최상단에 위치한 베이스 도메인을 확인하고, 복사하기 버튼을 클릭합니다.

  7. 애플리케이션 열기 링크 영역의 링크 추가 버튼을 클릭하고, 버튼명이 될 이름을 입력합니다.

  8. 연결될 URL을 입력합니다.

    URL의 구성

    URL은 사용자 지정 이름(서브 도메인)과 Runway 베이스 도메인으로 구성됩니다.

    {user-defined_sub-domain}.{runway-base-domain}
    
    (예시 화면) csef0227.v2.mrxrunway.ai
    
    • 서브 도메인(사용자 지정 이름): 임의 지정 가능하지만, 가급적 기본정보에 입력한 ID 값을 권장합니다.
    • 베이스 도메인: 리소스 현황에 표시되는 베이스 도메인 주소(6번 단계에서 복사한 값)를 붙여넣기 합니다.
  9. values.yaml에 기존 볼륨을 연결(권장)하려면 리소스 현황에서 볼륨 탭을 열어 볼륨명을 확인합니다.

    code-server-배포-05

  10. 1단계에서 생성한 볼륨 ID를 복사합니다.

  11. (권장) 볼륨을 연결하려면 persistence 영역에서 existingClaim의 주석을 해제하고, 복사한 볼륨 ID를 붙여넣습니다.

    values.yaml의 persistence 영역
    persistence:
    enabled: true
    mountPath: /config
    existingClaim: energy-data       # 1단계에서 만든 볼륨 ID
    
  12. (필수) 브라우저로 Code Server에 접속하기 위해 httpRoute를 활성화하고, URL(hostname)을 입력합니다. (필수)

    • hostname{서브도메인}.{Runway 기본 도메인} 형식입니다. Runway 기본 도메인은 관리자에게 확인하거나 기존 애플리케이션의 엔드포인트를 참고하세요.
    values.yaml 하단의 httpRoute 영역
    httpRoute:
    enabled: true                                 # false → true 변경
    hostname: "csef0227.v2.mrxrunway.ai"          # 접속할 주소 입력 (8번에서 생성한 전체 URL 입력)
    
  13. 저장 버튼을 클릭하여 애플리케이션 생성을 완료합니다.

GPU 설정 및 추가 차트 설정 변경

위의 과정을 통해 가벼운 코드 및 데이터 사용이 가능합니다.

이 외에 딥러닝 학습 등에 필요한 GPU를 사용하려면, podAnnotations(GPU 스케줄링)와 resources(GPU 리소스 요청) 두 곳의 주석을 해제합니다. 자세한 설정 방법은 GPU 사용 설정에서 확인하세요.

values.yaml의 전체 구조와 영역별 상세 설명은 앱 카탈로그 values.yaml 가이드를 참고하세요.


3단계: Code Server 접속

배포가 완료되면 Code Server에 접속합니다.

프로젝트 > 애플리케이션 메뉴

  1. 프로젝트에서 애플리케이션 메뉴로 이동합니다.

    code-server-접속-01

  2. 2단계에서 생성한 Code Server 카드(예시 code-server-003)를 클릭합니다.

  3. 애플리케이션 상태가 배포 해제됨이면 배포 버튼을 클릭합니다.

    code-server-접속-02

  4. 상태가 배포됨으로 바뀌었는지 확인합니다.

    code-server-접속-03

    Argo CD로 상태 보기

    정상 실행되지 않는 경우, 상태 표시 아래 위치한 Argo CD URL에 접속하여 상세한 상태 확인이 가능합니다.

    Argo CD로 상태 보기

  5. 열기 > 열기 버튼명(예시)code-server을 클릭합니다.

    • 브라우저에서 VS Code 화면이 열리면 개발 환경 구성이 정상 완료된 것입니다. code-server

JupyterLab도 동일하게 사용 가능

이 가이드에서는 Code Server를 기준으로 설명했지만, JupyterLab도 동일한 방식으로 배포하고 사용할 수 있습니다.