Windowxs 10 + Docker Desktop for Windows
Dockerを使うとコンテナ(アプリケーションと実行環境がセットになった感じのやつ)が扱える。
コンテナ上でアプリケーションを動かす手法は、従来の本体にインストールする手法に比べてメリットが大きい。
コンテナ | 従来の方法 | |
---|---|---|
新アプリ導入時 | すぐ動く | いろいろエラーが出て終わり |
環境 | 汚れない | 汚れて終わり |
別環境に移転 | 容易に移せる | めんどくさくて終わり |
なのでWindowsにDockerを導入する。
「Docker Desktop for Windows」を用いて導入。
その後 Hello World! 動作確認する。
1. 事前準備
1.1 OS
「Docker Desktop for Windows」を使うために必要な唯一の条件は、OSが「Windows 10 Pro」であること。
「Windows 10 Home」だとだめ。14,000円くらい払ってProにアップグレードしなければ使えない。
1.2 不要なもの
ネットで調べると事前準備として、
- Hyper-Vの有効化
- Docker IDの取得
などと出るがどちらも不要。多分昔は必要だった。
2. インストール
DockerDesktopのダウンロードサイトからインストーラーをダウンロード。
Windowsの「Stable」を選択。
入手した「Docker Desktop Installer.exe」を起動。
Windows Proじゃないと多分ここでエラー。
上のチェックを入れるとHyper-V(Windowsの持つ仮想化機能)を有効化してくれる。
必要。
下のチェックを入れるとショートカットを作ってくれる。
どちらでもいい。
インストールが終了。
「Close and restart」 を押すと再起動する。
再起動後、なんか出てくる。
無視してコマンドプロンプトを起動。
1 | docker -v |
と打ってDocker version 19.03.8, build afacb8b
のようにバージョンが表示されたらOK。
3. Hello World
Dockerがちゃんと動くか試す。
3.1 hello-worldのコンテナ作成
1 | docker pull hello-world |
と打つと、hello-world
のイメージがダウンロードできる。
1 | docker images |
と打つと、手元にあるDockerイメージの一覧が表示される。
1 | REPOSITORY TAG IMAGE ID CREATED SIZE |
さっきhello-world
というレポジトリからダウンロードされたイメージがある。
1 | docker create hello-world |
と打つと、さっきダウンロードしたイメージからコンテナが作られる。
1 | docker ps -a |
と打つと、手元にあるコンテナの一覧が表示される。-a
はall
。これを付けないと今動いているコンテナしか表示されない。
1 | CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES |
hello-world
のイメージから作られた、IDがb44acb8643e6
、名前がcharming_agnesi
のコンテナがある。
3.2 hello-worldのコンテナ実行
1 | docker start b44acb8643e6 |
と打つとさっきのコンテナが起動する。
ID(b44acb8643e6
)の代わりに、名前(charming_agnesi
)でも良い。
1 | docker logs b44acb8643e6 |
と打つとコンテナのログが表示される。
1 | Hello from Docker! |
から始まる長文が出てきたらうまくいってる。
3.4 Docker run
今までに行った、
1 | docker pull hello-world |
までの一連の流れは、
1 | docker run hello-world |
だけで全部実行できる。
実行ログもそのまま表示される。
3.4 hello-worldのコンテナ消去
1 | docker rm b44acb8643e6 |
でコンテナを消去。
1 | docker rmi hello-world |
でイメージを消去できる。