Docker for Windowsのメリットと制限事項
DockerとWindowsについて知っておくべき“全てのこと”(1/2 ページ)
「Docker」にWindowsとの互換性が加わった。だが開発者にとって欠かせない要素が全て提供されているわけではない。現時点のDocker for Windowsのメリットと制限事項をまとめた。
オープンソースのコンテナ管理ソフトウェア「Docker」は、もはやLinuxだけのものではない。2016年9月、Docker社は自社のコンテナプラットフォームで「Windows Server 2016」をサポートすると発表した。
DockerとWindowsはどのように連携するのだろう。どのような制限があり、組織にとって賢明な選択肢になるのだろうか。その答えについては本稿をご覧いただきたい。
併せて読みたいお薦めの記事
Windows Server 2016のコンテナ機能
- 「Windows Server 2016」がDockerをサポート、大幅強化されるコンテナ技術の中身とは?
- 専門家も誤解する「Windows Server 2016」の2つのコンテナ技術、比較で分かったことは
- Windows Server 2016のコンテナ機能が災害復旧に有効な理由
- コンテナとDockerとWindows Server 2016の“なんともややこしい”関係
- これが本命か、Windowsネイティブの「Docker」コンテナが登場 その意味とは?
コンテナ技術「Docker」について
DockerとWindowsの複雑な歴史
DockerとWindowsの関係はやや込み入っている。そこで2016年10月までの約1年間でDockerの「Docker for Windows」がどのように発展してきたかをまず整理する。
Dockerに詳しい方ならご存じだろうが、当初DockerコンテナはLinuxでしか実行できなかった。それはDockerがLXC(Linux Containers)の拡張機能だったためだ。LXCはLinuxカーネルと統合されるコンテナフレームワークだった。
事態が複雑化してきたのは、DockerがWindowsとAppleの「Mac OS X」向けにDockerアプリケーションを提供すると発表したときだ。DockerはこれらのアプリケーションをWindowsとMac OS Xに対して「ネイティブ」に機能させると説明した。だが、この「ネイティブ」という言葉が混乱を招くことになる。それは、WindowsとOS X用でDockerを実行するためにLinuxベースの仮想マシンを利用していたためだ。
DockerはWindowsユーザーとOS Xユーザーに「ネイティブ」なアプリケーションを約束したものの、実際に用意したのはDocker環境を自動的にセットアップするパッケージだった。セットアップ後、この環境内でWindowsまたはOS XでLinux仮想マシンが実行できる。このソリューションは実のところ、どちらのシステムにとっても、「基盤となるカーネルに統合される」という意味でのネイティブではない。このアプリケーションが実現したのは、これまでユーザーがWindowsまたはOS Xシステム上に仮想マシンを作成し、LinuxのゲストOSをその内部にインストールして、そのゲストOS内でDockerをホストすることによって実現できたことと変わらない。WindowsとOS X用のDockerパッケージはこうしたプロセスを自動化しているにすぎなかった。
だが話はここからだ。2016年9月、Dockerは大きな一歩を踏み出し、コンテナを本当の意味でWindowsでネイティブにサポートすることを発表した。このサポートには仮想マシンは必要ない。Windowsコンテナは、ホストOSのカーネルを共有して実行する。Linuxの介在なしにWindowsでコンテナ環境をホストできる。
「Mac」ユーザーにとっては残念だが、DockerはOS X向けには本当のネイティブサポートをまだ提供していない。2016年9月にDockerの幹部に対してOS Xのサポートに取り組んでいるかどうかを尋ねたところ、そのアイデアの可能性が否定されることはなかったものの、近い将来OS X上でネイティブに実行されるようになることを示唆する返答もなかった。
DockerとWindows:メリットと制限事項
真にネイティブなDocker for Windowsが提供されることは一大事だ。Dockerには、全く新しいWindowsを基盤とするエコシステムへの道が開かれる。アプリケーションをコンテナとして利用してWindows Serverに導入できるよう望んでいたソフトウェア開発チームにとっては、ついにそれが実現することになる。
ただし、Docker for Windowsには重要な制限事項が幾つか存在する。ユーザーはDocker for Windowsを試す前にまずその点を理解しておく必要がある。こうした制限事項としては次のようなものがある。
- 差し当たりサポートされるのはWindows Server 2016と「Windows 10」のみ。Dockerは以前のバージョンのWindowsとはネイティブには連係しない。ただし他のバージョンのWindows上でも、Linuxベースの仮想マシン内部でDockerを実行することは引き続き可能だ。
- Docker for Windowsは、WindowsアプリケーションをDocker化するためにしか使えない。従来の仮想マシンとは異なり、DockerコンテナはOS全体のエミュレーションは行わない。コンテナはホストOSの機能を拡張しているにすぎない。そのため、DockerホストがWindowsの場合、Dockerコンテナ内部で実行できるのはWindowsアプリケーションに限定される。Linux上のDockerコンテナ内ではLinuxアプリケーションしか実行できないのと全く同じだ。
- コンテナ向けの高度なネットワーク機能はWindows上ではまだ機能しない。その理由は、Windowsカーネルにおける完全なコンテナネットワークの実現を目指し、DockerとWindowsがそのサポートの実装にまだ取り組んでいるためだ。
- デスクトップアプリケーションを(実際に)実行できない。Docker for Windowsはサーバ環境向けなので、この制限事項が変わるとは思えない。DockerコンテナではGUIを必要とするアプリケーションを上手くホストできないことがその主な理由だ。ただし、Webブラウザを通じてインタフェースを提供するものであれば話は別だ。理論的には、Dockerコンテナでネットワーク経由による操作を実現する方法は存在する。だがWindowsでX.Org Foundationの「X11」を利用するユーザーがいたら申し訳ないが、こうした方法はWindowsフレンドリーではなく、間違いなく運用には向かない。そのため、近いうちにDockerがWindows PCにデスクトップアプリケーションをインストールする新しい方法になるとは期待しない方が賢明だ。
Copyright © ITmedia, Inc. All Rights Reserved.
この記事の著者
関連記事
新着ホワイトペーパー PR
-
製品資料
[株式会社MatrixFlow] 「物流リソース最適化」ガイド:人員・配車・傭車を出庫依頼の確定前に決めきる -
製品資料
[株式会社キーエンス] なぜRPA導入は頓挫する? シナリオ作成の壁を乗り越える解決策とは -
製品資料
[株式会社セールスフォース・ジャパン] 「CRMは設計と無関係」は本当か? PLMとの融合で実現する高速開発 -
事例
[日本ヒューレット・パッカード合同会社] AIエージェントの時代にどう備える? 「新たな働き手」を支える3要素とは -
製品資料
[日本ヒューレット・パッカード合同会社] “横並びの自動化”から脱却、AI活用で生産性と競争力を高める秘訣
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
なぜ「全社配布Copilot」は使われないのか? 失敗に学ぶAI定着
-
2
法務と開発者で「言葉が通じない」問題 トヨタやソニーが語るOSS管理の真実
-
3
なぜ「Gemini 4 Argon」は出遅れたのか? Googleが狙う“逆転のシナリオ”
-
4
損保ジャパンはなぜ「COBOL」を捨てなかったのか? 脱メインフレームの真相
-
5
情シスの約8割が転職や退職を意識 調査で分かった“辞めたくなる最大の理由”
-
6
ChatGPTは“検索しまくり”でGeminiは“淡泊”? データが明かすAIの裏側
-
7
情報漏えいはなぜ繰り返されるのか 今すぐ見直すべき「境界」
-
8
「Wi-Fi 7」経由でWindowsが乗っ取られる? 最高権限奪取の恐怖
-
9
「結局使わなくなる」Microsoft 365 Copilotを半年で定着 キリンの3施策
-
10
「中堅・中小企業のネットワーク・セキュリティ運用実態」に関するアンケート
ホワイトペーパーランキング PR
-
1
不審メールの経路や見せ方に変化? 2026年夏の3事例から見えた動向と対処方法
-
2
家庭用Wi-Fiルーターの業務利用は危険? 避けるべき理由と具体的な対策
-
3
Microsoft 365を安全に運用 うっかりミスやサイバー攻撃に備えるデータ保護術
-
4
財務部門がAIを最大限に活用する方法 無駄のない戦略的リーダーシップへの道
-
5
LLMが兵器化? 元FBI高官が鳴らす警鐘とセキュリティツール統合のポイント
-
6
「オンプレミス回帰」せざるを得ない“合理的な理由”
-
7
なぜRPA導入は頓挫する? シナリオ作成の壁を乗り越える解決策とは
-
8
生成AIを開発に導入しても効果が見えない? 実証実験で分かった成果と課題
-
9
経産省DX指針から読み解く、受発注業務デジタル化ロードマップ
-
10
HDDを使わない「SSDオンリー」が無謀なのはなぜ?
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー