【Docker】 Docker ~ Windows / 環境構築編 ~

■ はじめに

Windows での Docker の環境構築を行う

最新の設定手順は、以下の関連記事を参照のこと。

WSL2 ~ 環境構築編 ~
https://dk521123.hatenablog.com/entry/2020/12/08/165505

Windows版 / 環境要件 (2017/09/23現在)

https://docs.docker.com/docker-for-windows/install/#what-to-know-before-you-install

 * Windows 10 Pro/Enterprise/Education (64bit)
 * Microsoft Hyper-V
 ⇒ Hyper-V を有効にしておく必要がある
 ⇒ 設定方法は、以下を参照のこと。(要再起動)

https://docs.microsoft.com/ja-jp/virtualization/hyper-v-on-windows/quick-start/enable-hyper-v#enable-the-hyper-v-role-through-settings

 ■ ダウンロード

 * 以下のサイトから「Get Docker for Windows (Stable)」をクリックし、
   インストーラ「Docker for Windows Installer.exe」をダウンロードする

ダウンロード先
https://docs.docker.com/docker-for-windows/install/#download-docker-for-windows

■ インストール

ログオフや再起動とかされてしまうので、注意 

 * インストーラ「Docker for Windows Installer.exe」をダブルクリックするだけ

確認方法

 * コマンドプロンプトを立ち上げて、「docker --version」を入力
  => バージョン確認できるはず

 ■ Dockerを使ってみる

CentOS / Tomcatを入れる

 【1】 CentOSを入れる

* コマンドプロンプトを立ち上げて、以下を入力

コマンド例

# Dockerのレジストリ(イメージの集積所)からCentOSイメージをダウンロード
docker pull centos:latest

# Dockerイメージの一覧を表示
docker images

# コンテナ起動 (結構時間がかかる)
docker run -it -d --name centos centos:latest

# コンテナの状態を確認
docker ps -a

# コンテナへ接続
docker exec -it centos bash

# CentOSを操作を確かめるために lsコマンド
ls -l

# CentOSからログアウト
exit

 【2】 Tomcatを入れる

2-1) 以下『サンプル:Dockerfile』を 「Dockerfile」(拡張子なし)というファイル名でUTF-8で保存する
 ⇒ 今回は「C:\work\docker\centos」配下に保存
 ⇒ wget/Java/Tomcat をインストールして、コンテナ起動時にTomcatを起動する

2-2)コマンドプロンプトを立ち上げて、以下『コマンド例』を入力

サンプル:Dockerfile

FROM centos:latest

RUN yum -y install wget java
RUN cd /opt; wget http://ftp.jaist.ac.jp/pub/apache/tomcat/tomcat-8/v8.5.21/bin/apache-tomcat-8.5.21.tar.gz; tar zxf apache-tomcat-8.5.21.tar.gz

WORKDIR /opt/apache-tomcat-8.5.21
CMD ./bin/startup.sh; tail -f ./logs/catalina.out

コマンド例

cd C:\work\docker\centos

# Dockerイメージ作成
docker build -t tomcat-image .

# Dockerイメージ一覧を表示
docker images

# コンテナ起動
docker run -it -d -p 18080:8080 --name tomcat-container tomcat-image

# コンテナ状態を表示
docker ps -a

 【3】 動作確認

* ブラウザで以下のURLにアクセスする(Tomcatのページが表示されればOK)

http://localhost:18080/

 参考文献

http://www.atmarkit.co.jp/ait/articles/1405/16/news032.html http://www.atmarkit.co.jp/ait/articles/1701/30/news037.html http://paiza.hatenablog.com/entry/docker_intro

 関連記事

Docker ~ 基礎知識編 ~
https://dk521123.hatenablog.com/entry/2020/04/24/160044
WSL2 ~ 環境構築編 ~
https://dk521123.hatenablog.com/entry/2020/12/08/165505
 Docker ~ Linux / 環境構築編 ~
https://dk521123.hatenablog.com/entry/2018/04/10/234030
Docker ~ 入門編 ~
https://dk521123.hatenablog.com/entry/2023/02/25/000000
Docker ~ 基本編 / docker network ~
https://dk521123.hatenablog.com/entry/2022/04/30/000000
 Docker ~ 基本編 / Data Volume ~
https://dk521123.hatenablog.com/entry/2018/09/08/222100
Docker ~ GO言語 ~
https://dk521123.hatenablog.com/entry/2022/01/14/102719
Docker ~ Apache
https://dk521123.hatenablog.com/entry/2022/02/22/000000
Docker ~ WordPress
https://dk521123.hatenablog.com/entry/2022/04/29/000000
Docker ~ LAMP
https://dk521123.hatenablog.com/entry/2023/01/12/000000
Docker compose ~ 環境構築編 ~
https://dk521123.hatenablog.com/entry/2022/04/28/000000
Docker compose ~ 入門編 ~
https://dk521123.hatenablog.com/entry/2022/05/21/222910
Docker compose ~ 基本編 ~
https://dk521123.hatenablog.com/entry/2020/04/11/000000
Docker compose ~ docker-compose.yml ~
https://dk521123.hatenablog.com/entry/2020/12/18/152949
 Docker によるトラブルシューティング
https://dk521123.hatenablog.com/entry/2017/09/24/162257