ノート: GitHub Packagesは現在GitHub Enterprise Server 2.22でベータです。 GitHub Enterprise Serverのインスタンスのベータに参加するには、サインアップフォームを使ってください。
GitHub Packages について
GitHub Packagesはパッケージホスティングサービスで、GitHubと完全に統合されています。 GitHub Packagesは、ソースコードとパッケージを一カ所にまとめ、統合された権限管理と支払いを提供し、GitHub Enterprise Server上でのソフトウェア開発を一元化できるようにします。
GitHub Packagesは、GitHub Enterprise Server API、GitHub Actions、webhookと統合して、コード、CI、デプロイメントのソリューションを含むエンドツーエンドのDevOpsワークフローを作成できます。
GitHub Packagesは、nmp、RubyGems、Apache Maven、Gradle、Docker、NuGetといった、広く使われているパッケージマネージャーに対する様々なパッケージレジストリを提供しています。 GitHub Packagesがサポートする様々なパッケージレジストリに関する詳しい情報については「GitHub Packagesレジストリの利用」を参照してください。
GitHub Enterprise Serverでは、ライセンスのようなメタデータやパッケージのREADMEを表示したり、統計をダウンロードしたり、バージョン履歴を見たりできます。 詳しい情報については「パッケージの表示」を参照してください。
パッケージの権限と可視性の概要
権限 | |
それぞれのパッケージは、ホストされているリポジトリの権限を継承します。 たとえば、リポジトリの読み取り権限を持つ人であれば、プロジェクトに依存関係としてパッケージをインストールでき、書き込み権限を持つ人であれば、新しいパッケージバージョンを公開できます。 | |
可視性 | パブリックリポジトリで(パブリックパッケージ)パッケージを公開して、Enterpriseの全員と、もしくはプライベートリポジトリ(プライベートパッケージ)でパッケージを公開して、コラボレータあるいはOrganizationと共有できます。 |
詳しい情報については「GitHub Packagesの権限について」を参照してください。
サポートされているクライアントとフォーマット
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 |
GitHub Packagesと使うためのパッケージクライアントの設定に関する詳しい情報については「GitHub Packagesレジストリの利用」を参照してください。
GitHub Packages への認証を行う
GitHub Packagesでパッケージを公開、インストール、削除するにはアクセストークンが必要です。
GitHub Packages、あるいはGitHub APIで認証を受けるのに、個人のアクセストークン(PAT)が利用できます。 個人トークンを作成する際には、必要に応じて様々なスコープをトークンに割り当てできます。 PATに関するパッケージ関連のスコープについての詳しい情報は、「GitHub Packagesの権限について」を参照してください。
GitHub Actionsワークフロー内でGitHub Packagesレジストリに認証を受けるには、以下の方法が使えます。
GITHUB_TOKEN
を使って、ワークフローリポジトリに関連づけられたパッケージを公開。- PATで他のプライベートリポジトリ(これには
GITHUB_TOKEN
がアクセスできない)に関連づけられたパッケージをインストール。
GitHub Actionsワークフローで使われるGITHUB_TOKEN
に関する詳しい情報については「ワークフローでの認証」を参照してください。
パッケージの管理
プライベートパッケージのバージョンは、GitHub Enterprise Server上で、またはGraphQL APIを使って削除できます。
GraphQL APIを使ってプライベートパッケージに対するクエリや削除を行う場合、GitHub Packagesの認証に使うのと同じトークンを使わなければなりません。 詳しい情報については、 「パッケージを削除する」および「"GraphQLでの呼び出しの作成」を参照してください。
webhookを設定して、パッケージの公開や更新といったパッケージ関連のイベントにサブスクライブできます。 詳しい情報については、「package
webhookイベント」を参照してください。
サポートへの連絡
GitHub Packagesのサポートが必要な場合は、サイト管理者に連絡してください。