Skip to main content

Connecting a repository to a package

You can connect a repository to a container image on GitHub.com.

GitHub Packages は、GitHub Free、GitHub Pro、Organization の GitHub Free、GitHub Team、GitHub Enterprise Cloud、GitHub Enterprise Server 3.0 以降、GitHub AE で利用できます。
GitHub Packagesは、レガシーのリポジトリごとのプランを使っているアカウントが所有しているプライベートリポジトリでは利用できません。 また、レガシーのリポジトリごとのプランを使っているアカウントは、リポジトリごとに課金される Container registry にはアクセスできません。 詳細については、「GitHub's products」を参照してください。

By connecting a repository to a package, the package landing page will show information and links from the repository, such as the README.

Connecting a repository to a user-owned package on GitHub

  1. GitHub で、個人アカウントのメイン ページに移動します。

  2. GitHub.com の右上隅にあるプロファイル写真をクリックし、 [自分のプロファイル] をクリックします。 プロファイル写真

  3. プロファイル ページの右上にある [パッケージ] をクリックします。 プロファイル ページの [パッケージ] オプション

  4. パッケージのバージョンで、 [リポジトリの接続] をクリックします。 パッケージのランディング ページでリポジトリ ボタンを接続する

  5. リポジトリを選択し、 [リポジトリの接続] をクリックします。 リポジトリ選択のポップアップ ウィンドウ内の [リポジトリの接続] ボタン

Connecting a repository to an organization-owned package on GitHub

  1. GitHubで、Organizationのメインページにアクセスしてください。

  2. Organization 名の下で、 [パッケージ] をクリックします。 Organization ランディング ページの [パッケージ] タブ

  3. パッケージのバージョンで、 [リポジトリの接続] をクリックします。 パッケージのランディング ページでリポジトリ ボタンを接続する

  4. リポジトリを選択し、 [リポジトリの接続] をクリックします。 リポジトリ選択のポップアップ ウィンドウ内の [リポジトリの接続] ボタン

Connecting a repository to a container image using the command line

  1. In your Dockerfile, add this line, replacing OWNER and REPO with your details:

    LABEL org.opencontainers.image.source=https://github.com/OWNER/REPO

    For example, if you're the user monalisa and own my-repo, and GitHub.com hostname is github.companyname.com, you would add this line to your Dockerfile:

    LABEL org.opencontainers.image.source=https://github.com/monalisa/my-repo

    For more information, see "LABEL" in the official Docker documentation and "Pre-defined Annotation Keys" in the opencontainers/image-spec repository.

  2. Build your container image. This example builds an image from the Dockerfile in the current directory and assigns the image name hello_docker.

    $ docker build -t hello_docker .
  3. Optionally, review details for the Docker image you want to tag.

    $ docker images
    > REPOSITORY                                                    TAG                 IMAGE ID            CREATED             SIZE
    > containers.github.companyname.com/my-org/hello_docker         latest              38f737a91f39        47 hours ago        91.7MB
    > containers.github.companyname.com/my-username/hello_docker    latest              38f737a91f39        47 hours ago        91.7MB
    > hello-world                                                   latest              fce289e99eb9        16 months ago       1.84kB
  4. Tag your Docker image with your desired image name and hosting destination.

    $ docker tag IMAGE_NAME ghcr.io/OWNER/NEW_IMAGE_NAME:TAG

    For example:

    $ docker tag 38f737a91f39 containers.github.companyname.com/monalisa/hello_docker:latest
  5. If you haven't already, authenticate to the Container registry. For more information, see "Authenticating to the Container registry."

    $ echo $CR_PAT | docker login ghcr.io -u USERNAME --password-stdin
    > Login Succeeded
  6. Push your container image to the Container registry.

    $ docker push ghcr.io/OWNER/IMAGE-NAME:TAG

    For example:

    $ docker push containers.github.companyname.com/monalisa/hello_docker:latest