docker pullの基本からオプションの使い方まで実例付で解説

※本サイトにはプロモーション・広告が含まれています。

(最終更新月:2023年8月)

✔当記事が対象とするのは以下のような方です

「docker pullの使用方法がわからない」

「docker pullコマンドの書式を知りたい」

「docker pullコマンドの具体的な実行例を見たいと思っている方」

✔当記事でお伝えすること

  • docker pullコマンドの基本
  • docker pullコマンドの適切な記述方法
  • docker pullコマンドを使った具体例

当記事では、docker pullコマンドの基本の解説からオプションの活用方法に至るまで、具体的な実例を通じて順を追って解説していきます。

ぜひ最後までお読みください。

筆者プロフィール

筆者プロフィールアイコン

【現職】プロジェクトマネージャー/SE(元外資系金融機関営業)

【副業】ブログ(月間15万PV)/YouTube/Web・アプリ制作

コミュニケーション × ビジネススキル × 文章力 × プログラミングスキルを活かし、30後半からのIT系職へシフト。当サイトでは、実際に手を動かせるWebアプリの開発を通じて、プログラミングはもちろん、IT職に必要な情報を提供していきます。

【当ブログで紹介しているサイト】

当サイトチュートリアルで作成したデモ版日報アプリ

Django × Reactで開発したツール系Webアプリ

✔人に見せても恥ずかしくないコードを書こう

「リーダブルコード」は、わかりやすく良いコードの定義を教えてくれる本です。

  • 見るからにきれいなコードの書き方
  • コードの分割方法
  • 変数や関数の命名規則

エンジニアのスタンダートとすべき基準を一から解説しています。

何回も読むのに値する本なので、ぜひ手にとって読んでみてください。

Docker Pullの基本文法

こちらでは、「Docker Pull」の基本文法について説明します。

docker pullは、Dockerコマンドの中でも頻繁に使われるもののひとつです。

  • docker pullとは
  • コマンドのフォーマット
  • docker pullの主要オプション
  • 基本的なコマンドの使用例

Docker Pullとは

Docker Pullとは、指定したDockerイメージをDocker Hubやそのほかのレジストリからローカル環境へダウンロードするコマンド。

ひとつのコマンドで、特定のソフトウェア環境を手元に用意できます。

docker pull ubuntu

Ubuntuの最新版のDockerイメージを取得します。

コマンドのフォーマット

Docker Pullコマンドの基本的なフォーマットはこちら。

docker pull [OPTIONS] NAME[:TAG|@DIGEST]

構文要素の説明です。

  • NAME:イメージの名前
  • TAGはバージョン
  • DIGEST:特定のイメージのハッシュ値

docker pullの主要オプション

Docker Pullコマンドにはいくつかのオプションがあります。

代表的なものは以下のとおりです。

  • -a, --all-tags: イメージの全てのタグを一度にダウンロード
  • --platform: 特定のプラットフォーム用のイメージをダウンロード

基本的なコマンドの使用例

基本的な使用例を見てみましょう。

以下のコマンドは、Ubuntuのイメージをダウンロードします。

docker pull ubuntu

また、特定のバージョンを指定してダウンロードする場合は、以下のようにタグを使用します。

docker pull ubuntu:18.04

オフィシャルイメージは、以下のようなHubで検索し、ダウンロードしてください。

Docker

Docker Pullの深掘り:補足情報

こちらでは、「Docker Pull」の補足情報について説明します。

プロキシの設定や並列ダウンロードの解説など、基本的な使い方を超えた詳細な情報をご覧ください。

  • プロキシの設定方法
  • 並列ダウンロードの解説

プロキシの設定方法

Docker Pullによるイメージnoダウンロードで、プロキシを設定する場合、以下のように設定してください。

/etc/docker/daemon.json

{
 "HTTP_PROXY": "http://proxy.example.com:80/",
 "HTTPS_PROXY": "https://proxy.example.com:443/",
 "NO_PROXY": "*.test.example.com,.example2.com"
}

Dockerの設定ファイルに、HTTP_PROXY, HTTPS_PROXY, NO_PROXYなどの環境変数を設定。

設定後、Dockerデーモンの再起動で、設定が反映されます。

並列ダウンロードの解説

Docker Pullはデフォルトで、イメージの各レイヤーを並列にダウンロードします。

これにより大きなイメージでも、高速にダウンロードが可能です。

ただしこの並列ダウンロードは、ネットワーク帯域を大量に使用するため、環境によってはこの設定を調整してください。

イメージの取得方法と活用

こちらでは、Dockerイメージの取得方法とその活用について詳しく説明します。

  • DockerHubからのイメージの取得
  • ダイジェストを使用したイメージの取得
  • 異なるレジストリからのイメージの取得
  • 特定リポジトリから複数の

DockerHubからのイメージの取得

DockerHubは、Dockerの公式レジストリで、多くの公開イメージがホストされている場所。

基本的なdocker pullコマンドを使うことで、DockerHubからイメージを取得できます。

以下は、Nginxの公開イメージを取得する例です。

docker pull nginx

ダイジェストを使用したイメージの取得

Dockerイメージは、その内容を一意に識別するハッシュ値(ダイジェスト)を持ちます。

このダイジェストを使用して特定のイメージを取得することも可能です。

以下に、ダイジェストを指定してイメージを取得する例を示します。

docker pull nginx@sha256:646614e1310895e26cfb8e82640f2f6640a795c8fd6509c44311406c9a0ef25e

ハッシュ値とは、ある特定のアルゴリズムで計算されたランダム(に見える)文字列。ここでは詳しく説明しませんが、ランダムな文字列がそのイメージ特有の名前になっていることを覚えておきましょう。

異なるレジストリからのイメージの取得

Dockerイメージは、DockerHubだけでなく、ほかのレジストリにもホストされることがあります。

以下はその一部です。

  • Amazon ECR,
  • Google Container Registry

これらのレジストリからイメージを取得する場合、レジストリのURLをイメージ名にプレフィックスとして追加します。

以下ha

以下は、Amazon ECRからイメージを取得する例です。

docker pull 123456789012.dkr.ecr.us-west-2.amazonaws.com/my-web-app:latest

特定リポジトリから複数のイメージの取得

特定のリポジトリから複数のイメージを一度に取得することも可能です。

その場合、-aまたは--all-tagsオプションを使用します。

以下は、Ubuntuの全てのタグのイメージを取得する例です。

docker pull -a ubuntu

中断時の対処法と親コマンド

こちらでは、Docker Pullの操作中に何らかの問題が発生した場合の対処法と親コマンドについて説明します。

  • Docker pullの取得を中止したときの処理方法
  • Docker pullの親コマンドについて

Docker pullの取得を中止したときの処理方法

Docker pullの操作を途中で中止した場合の動作は以下のとおり。

イメージのダウンロードが中断されても、既にダウンロードされたレイヤーは保存される

再度同じイメージをpullすると、最初からではなく中断した地点からダウンロードが再開されます。

Docker pullの親コマンドについての説明

docker pullは、Dockerの親コマンドであるdockerの子コマンドのひとつです。

ほかの子コマンドには、以下のようなものがあります。

  • docker build:イメージのビルド
  • docker run:コンテナの起動
  • docker stop:コンテナの停止

これらのコマンドはdocker pullと組み合わせて使用され、Dockerを使用した開発や運用における重要なツールです。

まとめ

当記事の内容をまとめます。

  • docker pullコマンドは、イメージを外部からダウンロードするコマンド
  • オプションを使うことで、より詳細にダウンロード設定が可能
  • ほかのコマンドと合わせて覚えておく必要がある

Dockerは、開発環境を統一するためにとても便利なツール。

そのなかでも、docker pullは非常に使用頻度が高いコマンドです。

いろいろと手を動かしながら、docker pullの便利さを実感して見ましょう。

タイトルとURLをコピーしました