コンテナの実態と課題を整理
「コンテナ」の“誇大広告”にだまされないために確認すべきチェックポイント(1/2 ページ)
コンテナは数多くのメリットをもたらすが、制約も少なからずある。コンテナの可能性を正しく引き出すために、把握しておくべき制限事項を紹介する。
刺激的な宣伝は実情よりも先行するのが常だ。コンテナ化も過大視や誇大広告と無縁ではいられない。
開発者とDevOps(運用と開発の融合)チームは、コンテナのイメージとサーバランタイムに関わる問題を考慮する必要がある。コンテナは、どこでも実行でき、何でもカプセル化できるわけではない。
コンテナは、OSカーネルの特定領域にマッピングするため、コンテナとOSが本質的に結び付くことになる。そのためコンテナを別のOSへ移植する場合は、面倒で余分な作業が必要になる。例えばMicrosoftの「Windows」では、「Docker」形式のコンテナを利用できる。Red Hatの「Red Hat Enterprise Linux」(RHEL)でも同じ形式のコンテナを利用できる。だがWindows環境のコンテナ(Windowsコンテナ)が自動的にRHELで実行されるようにはならない。同じように、RHELコンテナは技術的に見ると別のLinuxホストで動作する可能性はある。だがシステム呼び出しなど、OSに当然存在するはずのものが見つからない、といった問題が発生する可能性は高い。
併せて読みたいお薦め記事
Windows環境で使えるコンテナ
そもそも「コンテナ」とは何か
クロスプラットフォームの制約
Dockerは「Linux」のコンテナ技術「LXC」(Linux Containers)の拡張機能として開発された。LXCは、アプリケーションとその依存関係(ライブラリやパス名など)を1つの実行可能イメージにバンドルするための標準形式を定義する。Dockerは、アプリケーションに公開する実行環境が、複数のDockerコンテナランタイム(実行環境)間で同じであることを保証する。LXCは独立したアプリケーションサンドボックスを確立するが、Dockerとは違ってシステム固有の詳細は抽象化しない。具体的にはネットワークやストレージの構成や、ライブラリ/ログファイルの場所のパスなどは抽象化の対象外だ。
Dockerイメージは、互換性のある全てのランタイムでそのまま実行できる。DockerがLinuxシステムでしか利用できなかったときは、これで十分だった。
Dockerの中核要素である「Docker Engine」は、WindowsとApple製OSにも移植された。その結果、OS固有のコンテナホスティングの制約が浮き彫りになった。
Linux、Windows、Appleの「macOS」でネイティブに実行し、ユーザーからのコマンドを受け付ける「Dockerクライアント」は、ローカルの「Dockerデーモン」(サーバ)へ接続する。Dockerデーモンはホスト型ハイパーバイザーの仮想マシン(VM)として実行し、Windowsなど他のOSでLinuxベースのコンテナをホストするのに必要な機能を提供する。ホスト型ハイパーバイザーにはOracleの「Oracle VM Virtualbox」などがある。
コンテナ化したアプリケーションはLinuxホストで実行する。そのためMicrosoftの「.NET Framework」など、ホストOSのネイティブのライブラリや他の機能は利用できない。Windowsカーネルを必要とするアプリケーションは、Windowsコンテナを使用してDocker互換システムでコンテナ化できる。本稿執筆時点では、Microsoftの「Windows Server 2016」または「Windows 10」でWindowsコンテナが利用可能になる。Windowsコンテナは、VMによる助けがなければLinuxまたはmacOSでは実行できない。
Linux環境からの移植
Dockerは、Linuxカーネルの機能をベースにしているが、特定のディストリビューションのパッケージ全体をベースにしているのではない。Linuxカーネル開発の中核となる考え方は、新しいバージョンに旧バージョンとの互換性を持たせる、というものだ。コンテナ化したアプリケーションが、Docker Engineとの互換性がある限り、どのLinuxディストリビューションをコンテナホストに選んだとしても適切に動作する。
コンテナは可搬性が高く、あるホストで構築し、動作するコンテナは、全く別のホストでも基本的には同じように動作する。そのホストがAmazon Web Services(AWS)の「Amazon EC2 Container Service」(ECS)のようなクラウドサービスだったとしても、それは変わらない。
Copyright © ITmedia, Inc. All Rights Reserved.
この記事の著者
関連記事
新着ホワイトペーパー PR
-
製品資料
[株式会社うるる] 「入札市場」攻略ガイド:効率的に落札するためのポイントを徹底解説 -
製品資料
[株式会社うるる] 入札情報に特化した「販路拡大」「効率化」のためのサポートツールとは? -
市場調査・トレンド
[株式会社うるる] 公共入札に成功する企業と失敗する企業の「5つの違い」 -
製品資料
[日本ビジネスシステムズ株式会社] 専門家が教える、Microsoft 365の「テナント統合/分離」を成功に導く秘訣 -
製品資料
[rakumo株式会社] Microsoft 365での情報埋没を防ぐ、社内ナレッジを資産化する情報ポータル活用
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
損保ジャパンはなぜ「COBOL」を捨てなかったのか? 脱メインフレームの真相
-
2
Claude利用8割のGMO、AI人材の評価軸が「トークン管理」に変わった
-
3
生成AIが普及しても「技術書」を手放せないエンジニアの本音
-
4
PHP脆弱性「PHP2Shell」で2260万件に影響 情シスの緊急チェックリスト
-
5
半数がブルーカラー転向を視野に? ベテランエンジニアを追い込む“54歳の壁”
-
6
“アジャイルの壁”に挑むオリックス生命がIBMの開発管理ツールを選んだ理由
-
7
「Microsoft 365」が乗っ取られる MFAを破る“本物の画面”の恐怖
-
8
「テザリング依存」に潜む落とし穴 “遅いVPN”を解消するネット構築術
-
9
IT製品の導入に関するアンケート「セキュリティ」編
-
10
ライオンが挑む「守りのIT」脱却:Google Cloudで加速させるデータ駆動型経営
ホワイトペーパーランキング PR
-
1
AI駆動攻撃にどう対抗する? 超速の攻撃からエンドポイントを保護する方法
-
2
2026年のサイバーセキュリティには何が必要か? 最新データに学ぶ傾向と対策
-
3
経験豊富な即戦力人材に直接アプローチできる、「攻めの採用」への転換術
-
4
「IT史に名を残すシステム障害」8選
-
5
最速72分でデータが流出? 最新の脅威トレンドや侵入手法から分かった防衛策
-
6
不審メールの経路や見せ方に変化? 2026年夏の3事例から見えた動向と対処方法
-
7
AI駆動開発のスピードと安全性を両立 「品質・セキュリティ管理」の実践ガイド
-
8
HDDを使わない「SSDオンリー」が無謀なのはなぜ?
-
9
「標的型攻撃メール」事例・サンプル集
-
10
Microsoft 365のメールセキュリティ、3つの“死角”と追加で検討すべき対策とは
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー