読者です 読者をやめる 読者になる 読者になる

kharuka2016のブログ

日々の出来事を書き留めておくブログ

カスタム コンテナー イメージを手動で作成する。(Windows Server コンテナー)

前提条件:

Windows Server 2016 を実行している 1 台のコンピューター システム (物理または仮想)。

Windows コンテナー機能と Docker でこのシステムを構成します。 これらの手順のチュートリアルについては、「Windows Containers on Windows Server」 (Windows Server の Windows コンテナー) を参照してください。

Docker ID。コンテナー イメージを Docker Hub にプッシュするために使用されます。 Docker ID がない場合は、Docker Cloud でサインアップしてください。

1.IIS イメージを取得します。

docker pull microsoft/iis

2.事前に取得した IIS イメージから IIS イメージを展開します。

docker run -d --name myIIS -p 80:80 microsoft/iis

3.コンテナーで対話型の cmd を起動します。

docker exec -i myIIS cmd

4.IIS スプラッシュ画面を削除します。

del C:\inetpub\wwwroot\iisstart.htm

5.既定の IIS サイトを新しい静的サイトに置き換えます。

echo "Hello World From a Windows Server Container" > C:\inetpub\wwwroot\index.html

6.コンテナのIPアドレスを確認します。

ipconfig

7.ブラウザでHello World From a Windows Server Containerと表示されるか確認しましょう。

6.対話型のコンテナー セッションを終了します。

exit

7.変更されたコンテナーを新しいコンテナーイメージにキャプチャします。

コンテナー名が必要になりますので以下コマンドで確認します。

docker ps -a

8.新しいコンテナー イメージを作成します。

docker commit myIIS modified-iis

エラーが発生しました。

Error response from daemon: Windows does not support commit of a running container.

exitしたような気が。。。 docker ps -aの結果をもう一度確認するとStatusがUPになっていました。 コンテナのセッションを終了しただけで停止出来ていなかったようです。

myIISコンテナを停止します。

docker stop myIIS

参考:

qiita.com

docker ps -aでmyIISのStatusがExitedになっていることを確認して、再度docker commitをします。 今度は成功。

9.新しいイメージが作成されたことを確認します。

docker images

参考:

docs.microsoft.com