정보 GitHub Packages
GitHub Packages 는 컨테이너 및 기타 종속성을 포함하여 패키지를 호스팅하고 관리하기 위한 플랫폼입니다. GitHub Packages 는 소스 코드와 패키지를 한 곳에 결합하여 통합된 권한 관리 및 청구를 제공하므로 소프트웨어 개발을 GitHub중앙 집중화할 수 있습니다.
GitHub Packages와 GitHub의 API, GitHub Actions, 웹훅을 통합하여 코드, CI, 배포 솔루션을 포함한 엔드 투 엔드 DevOps 워크플로를 만들 수 있습니다.
GitHub Packages 는 npm, RubyGems, Apache Maven, Gradle, Docker 및 NuGet과 같이 일반적으로 사용되는 패키지 관리자를 위한 다양한 패키지 레지스트리를 제공합니다.
GitHub's Container registry 는 컨테이너에 최적화되어 있으며 Docker 및 OCI 이미지를 지원합니다. 지원하는 다른 패키지 레지스트리 GitHub Packages 에 대한 자세한 내용은 GitHub 패키지 레지스트리 작업을 참조하세요.
패키지의 추가 정보 및 라이선스, 다운로드 통계, 버전 기록 등의 메타데이터를 볼 수 있습니다 GitHub. 자세한 내용은 패키지 보기을(를) 참조하세요.
패키지 권한 개요
패키지에 대한 권한은 해당 패키지가 호스팅되는 리포지토리에서 상속받거나, 특정 사용자 또는 조직에 대해 정의된 리포지토리에서 설정할 수 있습니다. 일부 레지스트리는 리포지토리에서 상속된 권한만 제공합니다. 이러한 레지스트리의 목록은 GitHub 패키지에 대한 사용 권한 정보을(를) 참조하세요. 패키지 액세스 권한에 대한 자세한 내용은 패키지의 액세스 제어 및 표시 여부 구성을(를) 참조하세요.
패키지 표시 여부 개요
퍼블릭 리포지토리(퍼블릭 패키지)에 패키지를 게시하여 모두 GitHub과(와) 공유하거나 프라이빗 리포지토리의 패키지(프라이빗 패키지)를 게시하여 협력자 또는 조직과 공유할 수 있습니다.
조직의 연결된 아티팩트 개요
linked artifacts page 또한 조직 설정의 "패키지" 섹션에서 액세스할 수 있는 대체 보기입니다.
GitHub Packages 마찬가지로 linked artifacts page조직의 빌드에 대한 정보를 한 곳에서 수집할 수 있습니다. Teams는 이 linked artifacts page 기능을 사용하여 아티팩트의 소스 코드, 빌드 세부 정보 및 배포 기록을 찾을 수 있습니다.
GitHub Packages와는 달리, linked artifacts page는 패키지나 이미지 파일 자체를 호스트하지 않습니다. 대신 각 패키지 또는 이미지와 연결된 메타데이터에 대한 신뢰할 수 있는 원본을 제공합니다.
조직에서 다음 중 하나를 사용하면 도움이 될 수 있습니다.linked artifacts page
- 패키지GitHub Packages 사용의 규정 준수 및 보안 측면에 초점을 맞춘 보완적인 보기로 함께
- 대신GitHub Packages 패키지의 가시성을 유지하면서 선택한 외부 레지스트리에 패키지를 저장할 수 있습니다. GitHub
자세한 내용은 연동된 아티팩트 개요을(를) 참조하세요.
GitHub Packages에 대한 청구 정보
퍼블릭 패키지의 GitHub Packages 사용은 무료로 제공됩니다.
프라이빗 패키지는 GitHub의 각 계정 플랜에 따라 결정되는 일정량의 무료 스토리지 및 데이터 전송을 받습니다. 포함된 금액을 초과하는 모든 사용량은 예산에 따라 제어됩니다.
유효한 결제 방법이 등록되어 있지 않은 경우, 할당량을 모두 사용하면 추가 사용이 차단됩니다.
파일에 유효한 결제 방법이 있는 경우 지출이 하나 이상의 예산으로 제한될 수 있습니다. 계정에 설정된 예산을 확인하여 사용량 요구 사항에 적합한지 확인합니다. 예산을 설정하여 요금제 제품에 대한 지출을 제어합니다.을(를) 참조하세요.
자세한 내용은 GitHub 패키지 청구을(를) 참조하세요.
지원되는 클라이언트 및 형식
GitHub Packages 는 패키지 버전을 게시하고 설치하는 데 이미 익숙한 네이티브 패키지 도구 명령을 사용합니다.
패키지 레지스트리 지원
| 언어 | 설명 | 패키지 형식 | 패키지 클라이언트 |
|---|---|---|---|
| JavaScript | Node 패키지 관리자 | package.json | npm |
| Ruby | RubyGems 패키지 관리자 | Gemfile | gem |
| Java | Apache Maven 프로젝트 관리 및 종합 도구 | pom.xml | mvn |
| Java | Java에 대한 Gradle 빌드 자동화 도구 | ||
build.gradle 또는 build.gradle.kts | gradle | ||
| .NET | .NET에 대한 NuGet 패키지 관리 | nupkg | |
dotnet 커맨드 라인 인터페이스 (CLI) | |||
| 해당 없음 | Docker 컨테이너 관리 | Dockerfile | Docker |
참고
Apache Maven 및 Gradle 레지스트리는 데이터 보존 기능을 갖춘 GitHub Enterprise Cloud 사용할 수 없습니다.
사용할 GitHub Packages패키지 클라이언트를 구성하는 방법에 대한 자세한 내용은 GitHub 패키지 레지스트리 작업을 참조하세요.
Docker 및 해당 Container registry항목에 대한 자세한 내용은 컨테이너 레지스트리 작업을 참조하세요.
인증 진행 중 GitHub Packages
참고
GitHub Packages 은 .를 사용하는 personal access token (classic)인증만 지원합니다. 자세한 내용은 개인용 액세스 토큰 관리을(를) 참조하세요.
프라이빗, 내부, 퍼블릭 패키지를 게시, 설치, 삭제하려면 액세스 토큰이 필요합니다.
personal access token (classic)을 사용하여 GitHub Packages 또는 GitHub API에 인증할 수 있습니다. personal access token (classic)을(를) 만들 때 필요에 따라 토큰의 범위를 다르게 할당할 수 있습니다. personal access token (classic)의 패키지 관련 범위에 대한 자세한 내용은 GitHub 패키지에 대한 사용 권한 정보를 참조하세요.
GitHub Packages 워크플로 내에서 GitHub Actions 레지스트리에 인증하려면 다음을 사용할 수 있습니다.
- 워크플로 리포지토리와 연결된 패키지를 게시하려면
GITHUB_TOKEN을 사용합니다. - 다른 프라이빗 리포지토리와 연결된 패키지를 설치하기 위한 최소한
read:packages범위가 있는 personal access token (classic)(리포지토리에 패키지에 대한 읽기 액세스 권한이 부여된 경우GITHUB_TOKEN을 사용할 수 있습니다. 패키지의 액세스 제어 및 표시 여부 구성을(를) 참조하세요).
워크플로에서 GITHUB_TOKEN 사용되는 방법에 대한 GitHub Actions 자세한 내용은 워크플로에서 인증에 GITHUB_TOKEN 사용을 참조하세요.
패키지 관리
사용자 인터페이스 또는 REST API를 GitHub 사용하여 패키지를 삭제할 수 있습니다. 자세한 내용은 패키지 삭제 및 복원 및 패키지에 대한 REST API 엔드포인트을 참조하세요. 특정 레지스트리의 경우 GraphQL을 사용하여 프라이빗 패키지의 버전을 삭제할 수 있습니다.
GitHub Packages GraphQL API는 세분화된 권한을 지원하는 레지스트리와 사용할 수 없습니다. 리포지토리 범위 권한만 지원하고 GraphQL API와 함께 사용할 수 있는 레지스트리는 GitHub 패키지에 대한 사용 권한 정보을(를) 참조하세요.
GraphQL API를 사용하여 프라이빗 패키지를 쿼리하고 삭제하는 경우 인증personal access token (classic)에 사용하는 것과 동일하게 GitHub Packages 사용해야 합니다.
패키지가 게시되거나 업데이트되는 경우와 같은 패키지 관련 이벤트를 구독하도록 웹후크를 구성할 수 있습니다. 자세한 내용은 웹후크 이벤트 및 페이로드을 참조하세요.
고객 지원팀에 연락
피드백 또는 기능 요청이 GitHub Packages있는 경우 토론을 사용합니다GitHub Community.
다음의 경우 GitHub 지원 포털에 대한 문의는 GitHub Packages로 연락주세요.
- 설명서와 상반되는 것이 나타납니다.
- 모호하거나 명확하지 않은 오류가 발생합니다.
- 게시된 패키지에는 GDPR 위반, API 키 또는 개인 식별 정보와 같은 중요한 데이터가 포함됩니다.