「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicrosofttech.osscons.jp/]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。

-[[戻る>コンテナ技術]]

* 目次 [#e7f57726]
#contents

*概要 [#bc938b52]
-Windowsネイティブなコンテナで、Linux上の[[Docker>https://dotnetdevelopmentinfrastructure.osscons.jp/index.php?Docker]]と同じような仕組みで動作する。

-[[コンテナ・ホスト>#s7d16955]]のコンテナ用Windowsカーネルを共有して動作する、コンテナ・ホスト上のプロセス。

*詳細 [#hce04e4a]

**サーバー環境 [#s7d16955]
-コンテナ用Windowsカーネルとして
--[[Server Core]]
--[[Nano Server]]
--[[Windows]]

>が利用できる。

-[[Docker>https://dotnetdevelopmentinfrastructure.osscons.jp/index.php?Docker]](ココではLinuxコンテナの意味)と同様に、~
軽量・高速なコンテナの起動や展開、管理が期待できる。

-参考
--Windows コンテナーの基本イメージ | Microsoft Docs~
https://docs.microsoft.com/ja-jp/virtualization/windowscontainers/manage-containers/container-base-images

**開発環境 [#v0931dbd]

***[[Docker for Windows]] [#yae10e7b]
Windows Serverコンテナのフロントエンドとして機能する。
-Windows Serverコンテナのフロントエンドとして機能する。
-Windows ClientからコンテナホストのWindows Serverを操作する。

***[[Docker Desktop for Windows]] [#a3130121]
-[[Docker Desktop for Windows]]の登場により、~
Windows10上で、Windowsコンテナを実行可能になった。

-動作確認
--Windowsコンテナのモードを変更する。
#ref(switch.png,left,nowrap,Switch to windows containers,60%)

--以下のDockerコマンドを実行して、動作確認してみる。

---どうも、[[Hyper-V コンテナ]]じゃないので、~
ホストのOSバージョンより古いバージョンが必要。
 >docker image pull mcr.microsoft.com/windows:1809
 1809: Pulling from windows
 e7f2973ed2dd: Pull complete
 84167d67b213: Pull complete
 Digest: sha256:ed36c6dcc78b19473ca7e9e8f2f12d83f133fc050db1a734f43a43e8db783537
 Status: Downloaded newer image for mcr.microsoft.com/windows:1809
 mcr.microsoft.com/windows:1809

---「no matching manifest for windows/amd64 in the manifest list entries.」~
が出たら、Settingで "experimental": true の定義(が必要になることがあるカモ)。

---コンテナ上でCMDを実行・起動する。
 >docker run -it mcr.microsoft.com/windows:1809 cmd.exe

---コンテナ上のCMDを実行する。
 >echo "Hello World!" > Hello.txt
 >echo systeminfo > systeminfo.txt
 >exit

---変更をイメージに保存する。
 >docker ps -a
 CONTAINER ID        IMAGE                            COMMAND             CREATED              STATUS                          PORTS               NAMES
 xxxxxxxxxxxx        mcr.microsoft.com/windows:1809   "cmd.exe"           About a minute ago   Exited (0) About a minute ago                       epic_solomon
 >docker commit <containerid> helloworld

---出力を確認して、
 >docker run helloworld cmd.exe /s /c type Hello.txt
 "Hello World!"
 >docker run helloworld cmd.exe type systeminfo.txt
 Microsoft Windows [Version 10.0.17763.1158]
 (c) 2018 Microsoft Corporation. All rights reserved.

---コンテナやイメージを消す。~
Dockerコマンドについては、[[コチラ>https://dotnetdevelopmentinfrastructure.osscons.jp/index.php?Docker%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89]]が参考になる。


*参考 [#d7fc0bbf]
-[和訳] 2017年Dockerブログ記事トップ5:~
はじめてのDocker Windows Serverコンテナの構築と実行~
#docker - クリエーションライン株式会社~
https://www.creationline.com/lab/20845

-Hyper-Vコンテナ(Nano Server)でunzipしたいならjarを使え | To Be Decided~
https://www.kaitoy.xyz/2016/09/12/unzip-on-nanoserver/

-Windows - Docker Hub~
https://hub.docker.com/_/microsoft-windows

**Qiita [#cfe88ef0]
-Windows Server 2016でWindows Serverコンテナーを使い始める~
https://qiita.com/anikundesu/items/f6e1561b8d99c6ee6156

-Windows Server 2019でWindowsコンテナを動かすまでのチュートリアル~
https://qiita.com/nukash/items/cd3a010c0146a51aa30a

-WindowsコンテナでWordPressを動かすまでに~
気づいたWindowsコンテナを使い始める時の注意点~
https://qiita.com/ko-he-8/items/3bc233eca2a32abc6c63

-Windows10 Pro上でHyper-Vコンテナーを使い始める手順~
https://qiita.com/anikundesu/items/90a7706b434daed5e266

**@IT [#cfe43d63]
-vNextに備えよ! 次期Windows Serverのココに注目

--(27)あなたの知らないコンテナーの世界(その2):~
所要時間は1分未満! 今すぐできるWindows Serverコンテナーの作り方 (1/3)~
http://www.atmarkit.co.jp/ait/articles/1509/17/news023.html

--(28)あなたの知らないコンテナーの世界(その3):~
IISコンテナーの作成で理解するコンテナーのネットワーク機能 (1/3)~
http://www.atmarkit.co.jp/ait/articles/1509/25/news016.html

**Microsoft Docs [#a45b164b]
-Windows 上のコンテナーに関するドキュメント~
https://docs.microsoft.com/ja-jp/virtualization/windowscontainers/

-Windows 10 上の Windows コンテナーおよび Linux コンテナー~
https://docs.microsoft.com/ja-jp/virtualization/windowscontainers/quick-start/run-your-first-container

----
Tags: [[:Windows]], [[:Hyper-V]], [[:仮想化]]

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS