Skip to main content

このバージョンの GitHub Enterprise はこの日付をもって終了となります: 2022-10-12. 重大なセキュリティの問題に対してであっても、パッチリリースは作成されません。 パフォーマンスの向上、セキュリティの向上、新機能の向上を図るために、最新バージョンの GitHub Enterprise にアップグレードします。 アップグレードに関するヘルプについては、GitHub Enterprise サポートにお問い合わせください

GitHub Packages の概要

GitHub Packages はソフトウェア パッケージのホスティング サービスであり、ソフトウェア パッケージをプライベートにまたはパブリックにホストでき、パッケージをプロジェクト中で依存関係として使えるようになります。

GitHub Packages は、GitHub Free、GitHub Pro、Organization の GitHub Free、GitHub Team、GitHub Enterprise Cloud、GitHub Enterprise Server 3.0 以降、GitHub AE で利用できます。 GitHub Enterprise Server インスタンスのアップグレードについて詳しくは、「新しいリリースへのアップグレードについて」を参照してください。また、現在のリリース バージョンからのアップグレード パスについては、アップグレード アシスタント を参照してください。

GitHub Packages について

GitHub Packages は、コンテナーやその他の依存関係を含むパッケージをホストおよび管理するためのプラットフォームです。 GitHub Packagesは、ソースコードとパッケージを 1 か所にまとめ、統合された権限管理を提供し、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 レジストリの操作」をご覧ください。

Dockerレジストリ、RubyGems、npm、Apache Maven、Gradle、Nuget、Dockerに対するパッケージサポートを示す図

GitHub Enterprise Serverでは、ライセンスのようなメタデータやパッケージのREADMEを表示したり、統計をダウンロードしたり、バージョン履歴を見たりできます。 詳しくは、「パッケージの表示」をご覧ください。

GitHub Enterprise Server での GitHub Packages の構成について詳しくは、「Enterprise 向けの GitHub Packages を使い始める」を参照してください。

パッケージの権限と可視性の概要

アクセス許可それぞれのパッケージは、ホストされているリポジトリの権限を継承します。

たとえば、リポジトリの読み取り権限を持つ人であれば、プロジェクトに依存関係としてパッケージをインストールでき、書き込み権限を持つ人であれば、新しいパッケージバージョンを公開できます。
視程パブリックリポジトリで (パブリックパッケージ) パッケージを公開して、Enterpriseの全員と、もしくはプライベートリポジトリ (プライベートパッケージ) でパッケージを公開して、コラボレータあるいは Organization と共有できます。

詳細については、「GitHub Packages のアクセス許可について」を参照してください。

サポートされているクライアントとフォーマット

GitHub Packagesは、パッケージのバージョンの公開とインストールに、すでにおなじみのネイティブのパッケージツールコマンドを使います。

パッケージレジストリのサポート

Language説明パッケージの形式パッケージクライアント
JavaScriptNodeのパッケージマネージャーpackage.jsonnpm
RubyRubyGemsパッケージマネージャーGemfilegem
JavaApache Mavenのプロジェクト管理及び包括的ツールpom.xmlmvn
JavaJava用のGradleビルド自動化ツールbuild.gradle または build.gradle.ktsgradle
.NET.NET用のNuGetパッケージ管理nupkgdotnet CLI
該当なしDockerコンテナ管理プラットフォームDockerfileDocker

注: Docker レジストリを有効にする場合は、サブドメインの分離も有効にすることを強くお勧めします。 詳細については、「サブドメイン分離の有効化」を参照してください。

GitHub Packages と使用するようにパッケージ クライアントを構成する方法について詳しくは、「GitHub Packages レジストリの操作」をご覧ください。

GitHub Packages への認証を行う

パッケージを発行、インストール、および削除するには、アクセス トークンが必要です。

個人アクセス トークン (PAT) を使用し、GitHub Packages または GitHub Enterprise Server API の認証を受けることができます。 個人トークンを作成する際には、必要に応じて様々なスコープをトークンに割り当てできます。 PAT のパッケージ関連のスコープの詳細については、「GitHub パッケージのアクセス許可について」を参照してください。

GitHub Actionsワークフロー内でGitHub Packagesレジストリに認証を受けるには、以下の方法が使えます。

  • GITHUB_TOKEN では、ワークフロー リポジトリに関連付けられているパッケージを発行します。
  • packages:read 以上のスコープが設定された PAT では、(GITHUB_TOKEN ではアクセスできない) 他のプライベート リポジトリに関連付けられているパッケージがインストールされます。

GitHub Actions ワークフローで使用される GITHUB_TOKEN の詳細については、「ワークフローで認証する」を参照してください。

パッケージを管理する

GitHub Enterprise Server のユーザー インターフェイスでは、非公開あるいはパブリック パッケージを削除できます。 また、repoスコープのパッケージでは、GraphQLを使用してプライベートパッケージのバージョンを削除できます。

GraphQL APIを使ってプライベートパッケージに対するクエリや削除を行う場合、GitHub Packagesの認証に使うのと同じトークンを使わなければなりません。

詳しくは、「パッケージを削除および復元する」および「GraphQL での呼び出しの作成」をご覧ください。

webhookを設定して、パッケージの公開や更新といったパッケージ関連のイベントにサブスクライブできます。 詳細については、「package webhook イベント」を参照してください。

サポートへの問い合わせ

GitHub Packages のサポートが必要な場合は、サイト管理者にお問い合わせください。