マイクロソフトは、Windows Serverの次の大きなアップデートの準備をしています(チェックアウト 本日の無料のマイクロソフト ブログ投稿)といくつかの新機能は、Dockerユーザーにとって非常にエキサイティングです。 最も重要な機能強化の 1 つは、Docker が Hyper-V テクノロジを使用して Windows (LCOW) 上で Linux コンテナーを実行できるようになりました。
Windows で Docker Linux コンテナーを実行するには、コンテナー プロセスをホストするための最小限の Linux カーネルとユーザーランドが必要です。 これはまさに何です LinuxKit ツールキット コンテナプラットフォームのコンポーネントとしてLinuxコンテナ機能を提供できる、安全で無駄のないポータブルLinuxサブシステムを作成する目的で設計されました。
私たちは、Windows上のDocker LinuxコンテナのLinuxKitサポートのプロトタイプ作成に忙しくしており、試すための作業プレビューを用意しています。 これはまだ進行中の作業であり、最近発表された "Windows Server Insider" またはWindows 10インサイダービルド。
更新:LCOW のサポートは、Windows 10 Fall Creators Update および Windows Server 1709 で利用できます。 Windows 10で試してみる最も簡単な方法は、Docker for Windowsのエッジバリアントをインストールすることです(詳細)。 Windows Server 1709 では、EE プレビューをインストールします。
Running Docker Linux Containers on Windows with LinuxKit
更新: LinuxKit LCOW リポジトリには、LinuxKit に関心のあるユーザー向けに更新された詳細が記載された README があります。
以下の手順は、Windows 10 および Windows Server Insider ビルド 16278 および 16281 でテストされています。
必ずインストールしてください Docker for Windows (ウィンドウズ 10) または Docker Enterprise Edition (Windows Server Insider) を起動する前に。
セットアップ Docker と LinuxKit
LinuxKit のプレビュー ビルドは、PowerShell で次のコマンドを実行するだけで入手できます (管理者権限を使用)。
$progressPreference = '黙って続行' mkdir "$Env:ProgramFiles\Linux Containers" Invoke-WebRequest -UseBasicParsing -OutFile linuxkit.zip https://github.com/friism/linuxkit/releases/download/preview-1/linuxkit.zip Expand-Archive linuxkit.zip -DestinationPath "$Env:ProgramFiles\Linux Containers\."RM LinuxKit .zip
次に、Windows 上の Linux コンテナーのプレビュー サポートを含む Docker デーモンのマスター ブランチ ビルドを取得します。
Invoke-WebRequest -UseBasicParsing -OutFile dockerd.exe https://master.dockerproject.org/windows/x86_64/dockerd.exe
別のパイプでリッスンし、デフォルトのインストールとは別のストレージの場所を使用して、新しいDockerデーモンを起動します。
$Env:LCOW_SUPPORTED=1 $env:LCOW_API_PLATFORM_IF_OMITTED="linux" .\dockerd.exe -D --experimental -H "npipe:////./pipe//docker_lcow" --データルート c:\lcow
お試しください
Linux コンテナーを実行します。
ドッカー -H "npipe:////./pipe//docker_lcow" run -ti busybox sh
Docker は、Linux コンテナーをホストする LinuxKit インスタンスを実行する最小限の VM を立ち上げました。
これは初期のプレビューであるため、いくつかの制限がありますが、プルや実行などの基本的なDocker操作は機能します。
今後の展望
Windows Server Insider ビルドと Windows 上の Linux コンテナーに対する Docker サポートはどちらも早期プレビュー モードです。 一般公開されると、Windows 上の Docker Linux コンテナーによって、Windows 開発者とサーバー管理者の両方にとって Docker Linux コンテナーのエクスペリエンスが向上します。 開発者は、同じシステム上で両方のプラットフォームのコンテナーを並べて実行することで、混合されたWindows/Linux Dockerアプリケーションをより簡単に構築およびテストできるようになります。
また、Windowsを好むIT管理者は、Windows上のDocker Linuxコンテナを介して、Windowsシステム上でHAProxyやRedisなどの(ほとんど)Linuxのみのソフトウェアを簡単に実行できるようになります。 たとえば、Windows 上の Docker Linux コンテナーを使用すると、Windows Server での Docker Enterprise Edition と Universal Control Plane (一部の Linux のみのコンポーネントに依存する) のセットアップがはるかに簡単になります。
この LinuxKit ベースのチュートリアルで、実験を開始できることを願っています。 フィードバックはいつでも大歓迎です! 一般的なヘルプとInsiderビルドの使用を開始するには、 Windows フィードバック ハブ (ウィンドウズ 10)、または Windows Server Insiders Tech Community.Windows 上の Linux コンテナに対する LinuxKit および Docker のサポートに関する問題については、 Docker for Windows issue tracker on GitHub.そして、私たちに知らせてください 囀る あなたが何かクールなものを作るなら!