このサイトは、只今WEB業界で活躍中のデザイナー、プログラマーの方々の情報を集めたweb統合情報サイトです。

Archives Details

2018年 Docker 使い方 まとめ その1

Docker

2018.12.15

この記事は最終更新日から1年以上が経過しています。

 

どもです。

いやぁ。師走真っ只中ですね。

1年経つのもあっという間ですね。

それはそうと、便利ですね。Docker。

でも、久々使おうとすると、「あれ。コマンドなんだっけ」現象が多々あったりしますね。

しないですか。

ということで、2018年終わる前に、改めてDockerに関してまとめてみることにしました。

これからDockerを使用する方とかにも参考になれば幸いです。

Docker インストール

まずは、ともあれ、Dockerをインストールするところからですね。

Docker公式サイトよりダウンロードしましょう。

Docker公式サイト

www.docker.com

公式サイトへ行き、右上の「Get Started」を押下。

右下に、各環境用のリンクがありますので、環境にあったのを選択しましょう。

Macの場合は「Docker for Mac」を使用することになります。

こちらの右側のところの「Get Docker」ボタン押下で Dockerをダウンロード。

2018年12月現在、ダウンロードには、どうやら DockerHubのアカウントが必要ぽいので、お持ちの方はログインしてダウンロード。

お持ちでない方は新規でアカウントを作成しましょう。

Macだが、レガシーな環境で「Docker for Mac」がインストールできない場合は、「Docker Toolbox」が用意されていますので、こちらをインストールしましょう。

その他、Windowsの場合など、こちらからダウンロードが行えます。

https://docs.docker.com/toolbox/overview/#ready-to-get-started

 

ダウンロード完了後、「アプリケーション」フォルダにドラッグ&ドロップで、アプリケーションをインストール。

ダブルクリックで「Docker」を起動しましょう。

ダブルクリックで、dockerデーモンを起動すると、メニューバーに追加されます。

こちらから「Docker」の設定などを行えたりします。

こちらの表示が、緑マークで「Docker is running」と表示していれば問題なく、dockerデーモン起動しておりDockerコマンドを実行できる状態となりますので、では早速Dockerコマンドを実行していきましょう。

Docker コマンド 実行

それでは、早速 Dockerコマンドを実行していきましょう。

なにはともあれ、プログラムの基本でもある、「hello-world」ですかね。

おもむろに以下のDockerコマンドを実行してみます。

$ docker run hello-world

コマンドの詳細は以下の通りとなります。

dockerコマンド: サブコマンド: image名

以下のメッセージが表示され、dockerが実行されます。

Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world

もし、この様なエラーが表示したら、DockerHubにログインの設定を行い失敗しているかもしれないので、

Unable to find image 'hello-world:latest' locally
docker: Error response from daemon: Get https://registry-1.docker.io/v2/library/hello-world/manifests/latest: unauthorized: incorrect username or password.

メニュー上部のdockerメニューからか、dockerコマンド「login」で、ログインを行いましょう。

(DockerHubにログイン設定行っている場合)

$ docker login

この時、IDはメールアドレスではなく、DockerHubのIDを入れる必要があります。

(メールアドレスを入力して失敗しました)

Hello from Docker!
This message shows that your installation appears to be working correctly.

と表示されれば成功です。

それ以下は、この様なメッセージが表示されたかと思います。

To generate this message, Docker took the following steps:
1. The Docker client contacted the Docker daemon.
2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
(amd64)
3. The Docker daemon created a new container from that image which runs the
executable that produces the output you are currently reading.
4. The Docker daemon streamed that output to the Docker client, which sent it
to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
$ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
https://hub.docker.com/

For more examples and ideas, visit:
https://docs.docker.com/get-started/

実行されたコマンドの説明文となっていますね。

実際に「docker run」コマンド は、以下の3つを行っています。

  • docker pull: イメージの取得
  • docker create: コンテナの作成
  • docker start: コンテナの起動

コマンドを実行しているPCに、「hello-world」のdockerイメージが存在しない場合、docker hubからイメージを pull(取得)してきます。

docker hub

その後、「docker create」コンテナの作成を行い、「docker start」コンテナの起動と言ったフローを経て、

Hello from Docker!

と、コンソールに表示されたことになります。

タグ指定

その他にも、「:」で、タグの指定も行えます。

$ docker run  hello-world:latest

「:latest」付与することによって「hello-world」イメージの「最新ビルドバージョン」を実行することになります。

という事で、 hello-worldを実行するまででも、そこそこの量となりましたので、何回かに分けて投稿していこうと思います。

続きは次回「2018年 Docker 使い方 まとめ その2」 で。

ではではぁ。

Comment

Related Article

2018年 Docker 使い方 まとめ その3

2018.12.17

2018年 Docker 使い方 まとめ その2

2018.12.16

2018年 Docker 使い方 まとめ その1

2018.12.15

忙しい人向けの Docker Composeで作る nginx + PHP7-fpm + mysql + phpMyAdmin の環境構築

2017.02.13

CATEGORY LIST

LATEST NEWS

Rust - Actix Web mongo ユーザー登録 JWT認証

Rust

2024.03.24

Rust - Actix Web JWT 認証認可 APIの作成

Rust

2024.02.25

Rust - Actix Web × JSON 静的ファイルをAPIで返却

Rust

2024.01.19

Rust - Actix Web × MongoDB環境をサクッと起動

Rust

2024.01.18

5分で学ぶ RustでWave Function Collapse (波動関数崩壊アルゴリズム)

Rust

2024.01.15

LLaMAモデル GGMLフォーマット(llama.cpp)をRustフレームワーク Leptosを用いて M1MacMiniでサクッと動かす。

Rust

2024.01.11

2024年 狙っているモバイルノートPC

tool

2024.01.07

MacOS XcodeにSDL2を追加

tool

2023.12.26

php 7.4にアップデート

PHP

2023.12.24

5分で覚える Flutter Flameで作る Wave Function Collapse - 波動関数崩壊アルゴリズム

AI・Bot・algorithm

2023.12.20

Flutter - Flameでゲーム作成 (キャラクターの移動)

Flutter

2023.07.23

Flutterで作る ChatGPT Prompt Manager

Flutter

2023.07.12

RANKING

Follow

SPONSOR

現在、掲載募集中です。



Links

About Us

WEBデザイナーの、WEBデザイナーによる、WEBデザイナーの為のサイト。「みんなで書こう!」と仲間を募ってみたが、結局書くのは自分だけとなってしまいました。日々のメモを綴っていきます。

Entry Profile

Graphical FrontEnd Engineer
- Daisuke Takayama

MAD CITY 北九州市で生まれ育つ。20代はバンド活動に明け暮れ、ふと「webデザイナーになりたい。」と思い、デジタルハリウッド福岡校入学。卒業後、数々の賞を受賞、web業界をざわつかせる。
現在、主に、ゲーム制作中心に港区六本木界隈で活動中。

FOLLOW US