Docker Hub クイックスタート

Docker Hub は、開発チームに向けて Docker のコンテナーイメージを検索したり共有したりするために Docker が提供するサービスの 1 つです。 これは世界最大のコンテナーイメージのリポジトリであり、コンテナーコミュニティの開発者、オープンソースプロジェクトや独立系ソフトウェアベンダー(independent software vendors; ISV)が、コンテナー内でのソースビルドと配布を行うコンテンツを提供しています。

無償の公開リポジトリをユーザーがアクセスして、イメージの保存と共有を行います。 プライベートリポジトリに対して 購入プラン を選ぶこともできます。

Docker Hub は主に以下の機能を提供します。

  • リポジトリ: コンテナーイメージのプッシュ、プルを行います。
  • チームと組織: コンテナーイメージを配するプライベートリポジトリへのアクセスを管理します。
  • Docker 公式イメージ: Docker が提供している高品質のコンテナーイメージをプルして利用します。
  • Docker 認定公開者のイメージ: 外部ベンダーによって提供されている高品質のコンテナーイメージをプルして利用します。
  • ビルド: GitHub や Bitbucket のコンテナーイメージを自動ビルドして Docker Hub へプッシュします。
  • ウェブフック(webhook): リポジトリへ正常にプッシュができた際に処理起動されるトリガーであり、Docker Hub と他サービスとの連携を図ります。

Docker では Docker Hub CLI ツール (現時点では試験的機能) を提供しています。 また Docker Hub に直接アクセスできる API も提供しています。 Docker Hub API のドキュメントを参照して、サポートされているエンドポイントを確認してください。

以下の節において、Docker Hub を簡単にはじめる例を順に示していきます。

手順 1: Docker アカウントへのサインアップ

まずは Docker ID を生成するところからはじめます。

Docker ID は Docker Hub リポジトリへのアクセス権を定めるものであり、コミュニティや検証済み公開者が提供するイメージを参照できるようになります。 また Docker ID は Docker Hub 上においてイメージを共有するために必要となります。

手順 2: リポジトリの新規生成

リポジトリ生成の手順は以下です。

  1. Docker Hub にサインインします。
  2. Docker Hub の Welcome ページにて Create Repository をクリックします。
  3. <your-username>/my-first-repo に名称を入力します。
  4. visibility(見せ方)を Private に設定します。

    リポジトリの生成

  5. Create をクリックします。

    リポジトリが初めて生成され、以下のように表示されます。

    リポジトリが生成される

手順 3: Docker Desktop のダウンロードとインストール

コンテナーイメージを構築して Docker Hub にプッシュするために、Docker Desktop をダウンロードする必要があります。

  1. Docker Desktop をダウンロードしてインストールします。 Linux の場合は Docker Engine をダウンロードします。

  2. 手順 1. において生成した Docker ID を用いて、Docker Desktop にサインインします。

手順 4: ローカルマシンからコンテナーイメージを構築し Docker Hub へプッシュ

  1. 以下に示すように Dockerfile を生成しアプリケーションを指定します。

    # syntax=docker/dockerfile:1
    FROM busybox
    CMD echo "Hello world! This is my first Docker image."
    
  2. Docker イメージを構築するために、コマンドdocker build -t <your_username>/my-private-repo .を実行します。

  3. コマンドdocker run <your_username>/my-private-repoを実行して、ローカル環境内の Docker イメージを確認します。

  4. docker push <your_username>/my-private-repoを実行して Docker イメージを Docker Hub にプッシュします。 出力結果は以下のようになります。

    端末画面

    プッシュ時にトラブル発生したら Docker Desktop を通じて、あるいはコマンドラインから Docker Hub にサインインしていることが必要です。 またイメージの指定は、上の各手順ごとに正しく行ってください。

  5. Docker Hub 内ではリポジトリのTags画面に、新たにlatestというタグが追加されます。

    生成されたタグ

おめでとうございます。 以下の作業が完了しました。

  • Docker アカウントへのサインアップ
  • 初めてのリポジトリ生成
  • コンピューター上での Docker コンテナーイメージのビルド
  • Docker Hub への正常なプッシュ

次のステップ

  • 組織(organization)を生成して開発チームにより Docker Hub を利用します。
  • ビルド からのコードを用いてコンテナーイメージを自動ビルドします。
  • 公式イメージや開発提供イメージを 検索 します。
  • サブスクリプションを更新 してプライベートな Docker イメージを Docker Hub に追加します。
Docker, docker, registry, accounts, plans, Dockerfile, Docker Hub, accounts, organizations, repositories, groups, teams