기존 애플리케이션 사용

Cloud Code는 백그라운드에서 사용하는 Skaffold를 활용하여 애플리케이션을 실행하거나 디버그합니다.

이미 Kubernetes 매니페스트와 Dockerfile을 사용하여 이미지를 빌드하도록 구성된 기존 애플리케이션이 있는 경우이를 Cloud Code로 열고 사용할 수 있습니다.

추가 구성으로는 skaffold 구성cloudcode.kubernetes 유형의 시작 구성만 있으면 됩니다. Cloud Code는 애플리케이션을 처음 실행하거나 디버그할 때 이러한 구성을 만드는 과정을 안내합니다.

구성 설정

애플리케이션에 Dockerfile이 있지만 필요한 Skaffold 및 실행 구성이 없으면 다음 단계를 완료합니다.

  1. Cloud Code 상태 표시줄에서 Run on Kubernetes 또는 Kubernetes에서 디버그를 선택합니다.

    Cloud Code 상태 표시줄에서 Run on Kubernetes 선택

  2. Kubernetes의 실행/디버그 대화상자에서 원하는 빌더와 설정을 지정합니다. 또한 구성 이름을 맞춤설정할 수도 있습니다.

    빌더 옵션 및 구성 이름 필드가 있는 빌드 설정 대화상자의 스크린샷

  3. 실행을 클릭합니다. 새로 생성된 skaffold.yaml 및 cloudcode.kubernetes 실행 구성이 작업공간에 추가되고 앱이 실행되거나 디버깅할 준비가 됩니다.

    구성 추가 성공을 알리는 대화상자와 skaffold.yaml 및 launch.json이 추가된 파일 트리의 스크린샷

이미 skaffold.yaml이 있는 애플리케이션의 구성 설정

애플리케이션에 이미 skaffold.yaml 파일이 있는 경우 다음 단계를 따르세요.

  1. Cloud Code 상태 표시줄에서 Run on Kubernetes 또는 Kubernetes에서 디버그를 선택합니다.

    Cloud Code 상태 표시줄에서 Run on Kubernetes 선택

  2. 작업공간에 skaffold.yaml 파일이 2개 이상 있으면 원하는 skaffold.yaml 파일을 선택합니다.

    skaffold 구성 파일 선택

  3. 선택한 skaffold.yaml 파일에 Skaffold 프로필이 2개 이상 있으면 원하는 Skaffold 프로필을 선택합니다.

    skaffold 프로필 선택

    새로 만든 cloudcode.kubernetes 실행 구성이 작업공간(.vscode/launch.json)에 추가되고 앱이 실행되거나 디버깅할 준비가 됩니다.

수동으로 Skaffold 구성 만들기

커스텀 옵션을 정의하기 위해 Skaffold 구성을 수동으로 만들 수 있습니다. Cloud Code에서는 수동 Skaffold 구성 만들기를 지원하기 위해 라이브 템플릿 생성 기능이 지원됩니다.

Skaffold 구성을 수동으로 만들려면 다음 안내를 따르세요.

  1. 작업 공간의 루트 디렉터리에 이름이 있는 새로운 파일을 만듭니다.

  2. 파일에서 Command/Ctrl+Space를 눌러 스니펫 추천 목록을 확인한 후 Skaffold - 시작하기 스니펫을 선택합니다.

    수동으로 Skaffold 구성 만들기 intellisense

  3. IDE에서 배포 할 Kubernetes 리소스 목록으로 이미지 필드를 프로젝트 이미지 이름과 매니페스트 필드로 채웁니다.

    Dockerfile 기반 빌드의 예:

    build:
      artifacts:
        - image: image_name
    deploy:
      kubectl:
        manifests:
          - k8s/web.yaml
          - k8s/backend.yaml
    

    컨텍스트마다 빌드, 테스트, 배포 구성을 정의하려면 Skaffold 프로필이 다를 수 있습니다. Cloud Build로 이미지를 빌드하도록 Cloud Code를 구성하는 Cloud Build 프로필의 예시는 다음과 같습니다.

    profiles:
    # use the cloudbuild profile to build images using Google Cloud Build
    - name: cloudbuild
      build:
        googleCloudBuild: {}
    

    전체 스키마 세부정보는 skaffold.yaml 참조를 확인하세요.

지원 받기

의견을 보내려면 GitHub에서 문제를 신고하거나 Stack Overflow에서 질문하세요.