Skip to main content

사전 빌드 문제 해결

사전 빌드를 사용하여 Codespace를 빠르게 만들 수 있습니다. 이 문서에서는 사전 빌드의 일반적인 문제에 대한 문제 해결 단계를 제공합니다.

GitHub Codespaces 사전 빌드에 대한 자세한 내용은 “codespace 사전 빌드”을(를) 참조하세요.

Codespace가 사전 빌드에서 만들어졌는지 확인하나요?

Codespace를 만들 때 사용하려는 가상 머신의 유형을 선택할 수 있습니다. 해당 가상 머신 유형의 사전 빌드를 사용할 수 있는 경우에는 " 사전 빌드 준비됨"이 옆에 표시됩니다.

사용 가능한 머신 유형 목록의 스크린샷: 2, 4, 8, 16 및 32 코어이며 모두 레이블이 "사전 빌드 준비됨"입니다.

Codespaces 편집기 기본 설정이 "웹용 Visual Studio Code"(으)로 설정되고 사전 빌드를 사용하는 경우 “Codespace 설정” 페이지에 “미리 빌드된 codespace가 있습니다”라는 메시지가 표시됩니다.

"미리 빌드된 코드스페이스를 찾음. 이미지 다운로드 중."이라는 텍스트가 있는 "코드스페이스 설정" 페이지의 스크린샷.

마찬가지로 편집기 기본 설정이 “VS Code”인 경우, 새 codespace를 만들 때 “리포지토리에 대한 사전 빌드 구성으로 정의된 사전 빌드된 codespace에 있습니다.”라는 메시지가 통합 터미널에 포함됩니다. 자세한 내용은 "Github Codespaces의 기본 편집기 설정"을(를) 참조하세요.

Codespace를 만든 후 터미널에서 다음 GitHub CLI 명령을 실행하여 사전 빌드에서 만들어졌는지 확인할 수 있습니다.

Shell
gh api /user/codespaces/$CODESPACE_NAME --jq .prebuild

해당 codespace가 사전 빌드를 사용하여 만들어진 경우 true을(를) 반환합니다.

또는 GitHub CLI (gh)이(가) 설치되지 않은 경우 다음 명령을 사용할 수 있습니다. 이 명령은 codespace가 사전 빌드에서 생성된 경우 createFromPrebuild을(를) 반환합니다.

Shell
cat /workspaces/.codespaces/shared/environment-variables.json | jq '.ACTION_NAME'

사전 빌드 사용량 확인

리포지토리 설정의 "Codespaces" 페이지에서 리포지토리가 사전 빌드를 사용하고 있는지 여부를 확인할 수 있습니다.

개인 또는 조직 계정에 대한 청구 데이터를 검토하여 현재 청구 주기에서 사전 빌드가 사용한 스토리지 공간을 확인할 수 있습니다. 사용 현황 보고서를 생성하여 어떤 리포지토리가 사전 빌드를 사용하고 있는지 확인할 수도 있습니다. 자세한 내용은 "GitHub Codespaces 사용량 확인"을(를) 참조하세요.

“사전 빌드 준비됨” 레이블이 누락되는 경우가 있습니다.

경우에 따라 사전 빌드를 사용할 수 있는 분기에서 새 codespace를 만들 때 머신 유형을 선택하기 위한 대화 상자에 “ 사전 준비됨” 레이블이 표시되지 않을 수 있습니다. 이는 현재 사전 빌드를 사용할 수 없음을 의미합니다.

기본적으로 사전 빌드를 사용할 수 있는 분기로 푸시할 때마다 사전 빌드가 업데이트됩니다. 푸시에 개발 컨테이너 구성 변경 내용이 포함된 경우 업데이트가 진행되는 동안 “ 사전 빌드 준비됨” 레이블이 머신 유형 목록에서 제거됩니다. 그래도 계속해서 사전 빌드 없이 codespace를 만들 수 있습니다. 필요한 경우 개발 컨테이너 구성 파일을 변경할 때만 또는 사용자 지정 일정에 따라 사전 빌드를 업데이트하도록 설정하여 리포지토리에 대해 사전 빌드를 사용할 수 없는 경우를 줄일 수 있습니다. 자세한 내용은 "사전 빌드 구성"을(를) 참조하세요.

분기가 사전 빌드에 대해 특별히 사용하도록 설정되지 않은 경우에도 사전 빌드 사용 분기에서 분기되었으면 사전 빌드의 이점을 누릴 수 있습니다. 그러나 분기에서 개발 컨테이너 구성이 변경되어 기본 분기의 구성과 동일하지 않은 경우 분기에서 더 이상 사전 빌드를 사용할 수 없습니다.

다음은 특정 분기에 대해 “ 사전 빌드 준비됨” 레이블이 표시되지 않는지 확인해야 할 사항입니다.

  • 이 분기에 대한 사전 빌드 구성이 있는지 확인합니다. 리포지토리 관리자가 아닌 경우 해당 관리자에게 문의하여 확인해야 합니다.
  • 사전 빌드 구성에 해당 지역이 포함되어 있음을 확인합니다.
  • 개발 컨테이너 구성에 대한 변경 내용이 최근에 사전 빌드 사용 분기로 푸시되었는지 확인합니다. 그렇다면 일반적으로 사전 빌드를 다시 사용할 수 있기 전에 이 푸시에 대한 사전 빌드 워크플로 실행이 완료될 때까지 기다려야 합니다.
  • 최근에 구성을 변경하지 않은 경우 리포지토리의 액션 탭으로 이동하여 워크플로 목록에서 Codespaces 사전 빌드를 클릭하고 분기의 사전 빌드 워크플로 실행이 성공하는지 확인합니다. 워크플로의 최신 실행이 실패하고 이렇게 실패한 실행 중 하나 이상이 개발 컨테이너 구성에 대한 변경 내용을 포함하는 경우 연결된 분기에 대해 사용할 수 있는 사전 빌드가 없습니다.

일부 리소스는 사전 빌드를 사용하여 만든 codespaces에서 액세스할 수 없습니다.

사전 빌드 구성에 대한 devcontainer.json 구성 파일이 다른 리포지토리에 대한 액세스 권한이 필요하도록 지정하는 경우 리포지토리 관리자가 사전 빌드 구성을 만들거나 업데이트할 때 이러한 권한을 부여하라는 메시지가 표시됩니다. 관리자가 요청된 권한을 모두 부여하지 않으면 사전 빌드 및 이 사전 빌드에서 만든 codespaces에서 문제가 발생할 수 있습니다. 이 사전 빌드를 기반으로 codespace를 만드는 사용자가 이 작업을 수행하라는 메시지가 표시될 때 모든 권한을 _부여_하는 경우에도 마찬가지입니다.

사전 빌드에 대한 실패한 워크플로 실행 문제 해결

GitHub Actions에 대한 지출 한도 증가

GitHub Actions을(를) 사용하여 사전 빌드를 만들고 업데이트합니다. GitHub Actions의 시간(분)을 모두 사용하고 지출 한도에 도달한 경우 사전 빌드 워크플로가 실패합니다. 이 경우 워크플로를 실행할 수 있도록 GitHub Actions 지출 한도를 늘릴 수 있습니다. 자세한 내용은 "GitHub Actions의 지출 한도 관리"을(를) 참조하세요.

액세스 권한 부여

사전 빌드 구성에 대한 devcontainer.json 구성 파일이 다른 리포지토리에 대한 액세스 권한이 필요하다는 것을 지정하도록 업데이트되었지만 저장소 관리자에게 사전 빌드 구성에 대한 이러한 사용 권한을 부여하라는 메시지가 표시되지 않은 경우 사전 빌드 워크플로가 실패할 수 있습니다. 변경하지 않고 사전 빌드 구성을 업데이트해 보세요. 업데이트를 클릭하여 권한 부여 페이지가 표시되면 요청된 권한이 적절한지 확인하고, 적절하면 요청에 권한을 부여합니다. 자세한 내용은 "사전 빌드 관리" 및 "Codespace 내의 다른 리포지토리에 대한 액세스 관리"을 참조하세요.

미리 빌드된 구성에 대한 워크플로 실행이 실패하는 경우 조사하는 동안 미리 빌드 구성을 일시적으로 사용하지 않도록 설정할 수 있습니다. 자세한 내용은 "사전 빌드 관리"을(를) 참조하세요.

오래된 사전 빌드 사용 방지

기본적으로 최신 사전 빌드 워크플로가 실패한 경우 동일한 리포지토리, 분기 및 devcontainer.json 구성 파일 조합에 대한 이전의 사전 빌드를 새 코드스페이스를 만드는 데 사용합니다. 이 동작을 사전 빌드 최적화라고 합니다.

최신 사전 빌드를 사용할 수 없는 경우 코드스페이스를 빠르게 만들 수 있도록 하기 때문에 사전 빌드 최적화를 사용하도록 유지하는 것이 좋습니다. 그러나 리포지토리 관리자는 미리 빌드된 코드스페이스가 분기의 현재 상태 뒤에 있는 문제가 발생할 경우 사전 빌드 최적화를 사용하지 않도록 설정할 수 있습니다. 사전 빌드 최적화를 사용하지 않도록 설정하면 최신 사전 빌드 워크플로가 실패했거나 현재 실행 중인 경우 관련된 리포지토리, 분기 및 devcontainer.json 파일 조합에 대한 코드스페이스가 사전 빌드 없이 만들어집니다.

  1. GitHub.com에서 리포지토리의 기본 페이지로 이동합니다.

  2. 리포지토리 이름 아래에서 Settings(설정)를 클릭합니다. "설정" 탭이 표시되지 않으면 드롭다운 메뉴를 선택한 다음 설정을 클릭합니다. 탭을 보여 주는 리포지토리 헤더의 스크린샷. "설정" 탭이 진한 주황색 윤곽선으로 강조 표시됩니다.

  3. 사이드바의 “코드 및 자동화” 섹션에서 Codespaces 를 클릭합니다.

  4. 영향 받은 사전 빌드 구성 오른쪽에 있는 줄임표(...)를 선택하고 편집을 클릭합니다.

    "편집"이 강조 표시된 사전 빌드 옵션 드롭다운의 스크린샷

  5. "구성 편집" 페이지의 아래쪽으로 스크롤하고 고급 옵션 표시를 클릭합니다.

    사전 빌드 구성 페이지의 아래쪽 스크린샷 "고급 옵션 표시" 링크가 진한 주황색 윤곽선으로 강조 표시됩니다.

  6. 기본 설정을 사용하지 않도록 설정하려면 사전 빌드 최적화 사용 안 함을 선택합니다.

    “고급 옵션” 설정의 스크린샷 "사전 빌드 최적화 사용 안 함"이라는 레이블이 지정된 상자가 선택됩니다. 이 아래에는 "업데이트" 단추가 있습니다.

  7. 변경 내용을 저장하려면 업데이트를 클릭합니다.

추가 참고 자료