【Docker】Docker for Windowsの環境をセットアップしてDockerを試す
はじめに
こんにちは、がんがんです。
本記事は鹿児島大学 Advent Calender 2019 7日目掲載記事となります。
中間発表も無事に終了しました。終了してすぐに研究室のインフラおじさんになることになりました。
インフラ構築としてDockerの使用をメインで考えています。
そこで、まずはDocker for Windowsの環境を自身のPCにセットアップしていきます。
以前のDocker記事はこちらになります。
【WSL】Docker on Ubuntu on WSL環境を構築したはなし - ganganの技術備忘録
【Docker】Ubuntu 18.04でDockerのインストールをやってみる - ganganの技術備忘録
目的
- Docker for Windowsのセットアップ
- Dockerの使い方を再確認
公式サイト
STEP1 Hyper-Vの有効化
DockerではHyper-Vを使用します。コントロールパネル -> プログラム -> Windowsの機能の有効化または無効化
より有効化にチェックを入れておきます。有効にするためには再起動が必須です。
STEP2 Docker for Windowsのインストール
公式サイトより.exeファイルをインストールします。サイトのリンクは以下の通りです。
Install Docker Desktop on Windows | Docker Documentation
ダウンロードを実行すると以下のようにログインを求められます。初めての時は手順に従ってアカウントの作成→ログインを行います。
STEP3 cmdからDockerを実行
コマンドプロンプトまたはPowerShellを立ち上げて、Dockerがきちんと動作しているかを確かめてみます。
まずはDocker for Windowsのアプリを立ち上げ、Dockerをrunning状態にします。画像のようにかわいいクジラさんが現れてくれます。
次に、端末を起動させます。今回はGit Bashで実行してみます。
$ docker --version Docker version 19.03.5, build 633a0ea
無事にバージョンを表示出来ました。
次に、hello-worldを試してみます。実行すると、pull → create → start → stopの順で動作が実行されます。
$ docker run hello-world Unable to find image 'hello-world:latest' locally latest: Pulling from library/hello-world 1b930d010525: Pulling fs layer 1b930d010525: Verifying Checksum 1b930d010525: Download complete 1b930d010525: Pull complete Digest: sha256:4df8ca8a7e309c256d60d7971ea14c27672fc0d10c5f303856d7bc48f8cc17ff Status: Downloaded newer image for hello-world:latest 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に関するコマンドまとめ
自分のメモもかねて書いておきます。
docker --version
Dockerのバージョンを確認するコマンド。
$ docker --version
docker run
Dockerの実行コマンド。もしローカルにイメージがない場合はDocker Hubよるpullしてきてくれます。
docker pull
、docker create
、docker start
が一括で行えるコマンドです。
$ docker run [name]
docker pull
Docker Hubよりimageをpullしてくるコマンド。
$ docker pull [images name]
docker create
pullしてきたイメージを使ってコンテナの生成を行うコマンド。
-itで対話モード、-dでバックエンドモードになります。
$ docker create -it [image name]
docker images
ローカルにどんなイメージがあるかを確認するコマンド。
実行例は以下の通りです。
$ docker images REPOSITORY TAG IMAGE ID CREATED SIZE node latest 760e12e87878 11 days ago 934MB hello-world latest fce289e99eb9 11 months ago 1.84kB
docker ps -a(docker container ls -a)
コンテナの実行状況を確認するコマンド。-aを付けることで停止しているものもすべて(all)見ることができます。
$ docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES ce4564b5d220 hello-world "/hello" 2 minutes ago Exited (0) 2 minutes ago strange_cerf
おわりに
今回はDocker for Windowsを試してみました。これでインフラおじさんへのレベルが一歩上昇しました。
Dockerは意外と簡単に試すことができ、環境構築で死ぬことがなくなるのでこれからは積極的に使っていきたいです。
また、わかばちゃんシリーズにはとてもお世話になりまくったので感謝です。最後に告知しておきます。
#マンガでわかるDocker
— GANGAN (@gangan_nikki) 2019年12月5日
Docker始めるために全部買ったけどめちゃくそ分かりやすくて泣いてる(。´Д⊂)
WebもGitもすごく分かりやすくて初心者に全部著書を進めたい
「#マンガでわかるDocker ① 〜概念・基本コマンド編〜 【ダウンロード版】 #技術書典」を 湊川あいの、わかば家。 で購入しました! https://t.co/N0fCxtCgtm #booth_pm
— GANGAN (@gangan_nikki) 2019年12月5日
「#マンガでわかるDocker ② 〜開発環境を作ろう編〜 #技術書典 【ダウンロード版】 (ダウンロード版(52ページ))」を 湊川あいの、わかば家。 で購入しました! https://t.co/6qMVSvYrMF #booth_pm
— GANGAN (@gangan_nikki) 2019年12月5日
「#マンガでわかるDocker ③ 〜AWS編〜 【ダウンロード版】#jawsdays #技術書典」を 湊川あいの、わかば家。 で購入しました! https://t.co/wiNyvpxYUH #booth_pm
— GANGAN (@gangan_nikki) 2019年12月5日