WindowsでUbuntuからコンテナーを実行する

こんにちは、Habr! 1週間前、DockerおよびWindows Server / Windows 10の予備リリースで使用可能な新機能について説明しました。Hyper-V分離を備えたWindowsコンテナーに類似した、Hyper-V分離を備えたLinuxコンテナーの起動です。 このチュートリアルでは、この環境でのUbuntuでのコンテナーの同様の起動について説明します。







はじめに



katの前に書いたように、Dockerコンテナーは、Ubuntuをホスティング環境として使用して、Windows 10およびWindows Serverで実行できるようになりました。 言い換えると、WindowsでのDockerテクノロジーとHyper-V仮想化の併用のおかげで、Ubuntuを使用してWindowsで独自のLinuxベースのアプリケーションを実行できます。







必要条件



1. 64ビットプロセッサとWindows 10またはWindows Serverを実行する8 GBのRAMを搭載したx86 PCが必要です。



2. Linux InsidersのみがHyper-VでLinuxコンテナーを実行できます。 このプログラムを使用すると、ソフトウェアのプレリリース版とWindowsの将来のバージョンをテストできます。



3.展開で安定性とプライバシーが重要な場合(Windows InsiderでMicrosoftが使用情報を収集できるようになる場合)、2017年10月にWindows 10 Fall Creator Updateがリリースされるのを待つことをお勧めします。彼女の中で。







4. Dockerの最新リリースも必要になります。http//dockerproject.orgからダウンロードできます。



5.最後に、Ubuntuホストコンテナーイメージを解凍するプログラム( 7-ZipXZ Utilsなど)をインストールしたことを確認する必要があります。



Windows Insiderに参加する方法



すでにこのプログラムのメンバーである場合は、次の手順に進みます。



ステージI



1. Webブラウザで次のリンクを開きます。



https://insider.windows.com/en-us/getting-started/



2.登録するには、Windows 10へのログインに使用するのと同じMicrosoftアカウントを使用してログインし、Windows Insider Programのスタートページで[個人アカウントの登録]リンクをクリックします。 契約を確認して登録を完了します。



3.ここで、Windows 10の[スタート]メニューで[設定]を開く必要があります [更新とセキュリティ]を選択し、左側のメニューで[Windows Insider Program]を選択します。







4.必要に応じて、Windowsが警告を表示する場合は、[修正]ボタンをクリックします。WindowsInsider Programアカウントに注意が必要です(Windows Insider Programのアカウントには注意が必要です)。



ステージII



1. Windows Insider Programで、Get Startedをクリックします。 MicrosoftアカウントがWindows 10のコピーに関連付けられていない場合は、プロンプトが表示されたらログインし、インストールされているオペレーティングシステムのコピーに関連付けるアカウントを選択します。



2.これで、Windows Insider Programのメンバーとして受け取るコンテンツを選択できます。 Dockerが必要とするHyper-Vの分離機能を確実に使用できるようにするには、[高速]を選択します。 [確認]をダブルクリックし、Windowsにコンピューターを再起動させます。 再起動後、次の手順に進む前に、一定数の更新のインストールが完了するのを待つ必要があります。







Docker for Windowsをインストールする



1. Docker StoreからDocker for Windowsをダウンロードします。







2.ダウンロード後、インストールを完了し、プロンプトが表示されたらシステムを再起動します。







3.再起動後、Dockerが起動します。 DockerはHyper-V機能を使用するため、必要に応じて、有効にして再起動するように求められます。 [OK]をクリックして、Dockerを有効にしてHyper-Vを有効にし、システムを再起動します。







Ubuntu Container Imageをダウンロードする



1. Canonical Partner Images Webサイトから最新のUbuntu Windowsコンテナーイメージをダウンロードします



2. 7-ZipまたはXZ Utilsを使用して、ダウンロードしたイメージを解凍します。

C:\Users\mathi\> .\xz.exe -d xenial-container-hyper-v.vhdx.xz
      
      







コンテナ環境を準備する



1.最初に2つのディレクトリを作成します。







2.コンテナを準備するときにDockerの一時ファイル領域として使用されるディレクトリC:\ lcowを作成します。







3. C:\ Program Files \ Linux Containersディレクトリも作成します。 Ubuntuコンテナーのイメージを保存します。



4. Dockerが保存されている画像を使用できるように、このディレクトリに追加のアクセス許可を割り当てる必要があります。 Powershell管理ウィンドウで次のPowershellスクリプトを実行します。



 param( [string] $Root ) # Give the virtual machines group full control $acl = Get-Acl -Path $Root $vmGroupRule = new-object System.Security.AccessControl.FileSystemAccessRule("NT VIRTUAL MACHINE\Virtual Machines", "FullControl","ContainerInherit,ObjectInherit", "None", "Allow") $acl.SetAccessRule($vmGroupRule) Set-Acl -AclObject $acl -Path $Root
      
      





このファイルをset_perms.ps1として保存して実行します。



ヒント 署名されていSet-ExecutionPolicy -Scope process unrestricted



スクリプトを実行するには、 Set-ExecutionPolicy -Scope process unrestricted



を実行する必要がある場合があります。





 C:\Users\mathi\> .\set_perms.ps1 "C:\Program Files\Linux Containers" C:\Users\mathi\>
      
      







5.前の手順で解凍したUbuntuコンテナーイメージ( .vhdx )でファイルをコピーし、 uvm.vhdxという名前を付けて、 C:\ Program Files \ Linux Containersディレクトリーに配置します。



Dockerの追加の準備手順



1. Docker for Windowsでは、Hyper-V分離ツールを使用するために、予備バージョンのいくつかの機能が必要です。 これらの機能は、以前にインストールしたDocker CEではまだ使用できませんが、Webサイトhttp://master.dockerproject.orgから必要なファイルをダウンロードできます。







2. http://master.dockerproject.orgからdockerd.exeおよびdocker.exeファイルをダウンロードし、安全な場所(たとえば、独自のディレクトリ)に保存します。 次のステップでUbuntuコンテナーを起動するために必要になります。



Hyper-VでUbuntuコンテナーを実行する



1.これで、コンテナを起動する準備が整いました。 開始するには、管理者としてコマンドラインインターフェイス(cmd.exe)を開き、目的の環境でdockerd.exeを実行します。



 C:\Users\mathi\> set LCOW_SUPPORTED=1 C:\Users\mathi\> .\dockerd.exe -D --data-root C:\lcow
      
      





2.次に、管理者としてPowershellウィンドウを開き、docker.exeを実行して、コンテナーのイメージをダウンロードします。



 C:\Users\mathi\> .\docker.exe pull ubuntu
      
      









3.最後に、コンテナを起動します。 docker.exeを再度実行し、システムに新しいイメージを展開するように依頼します。



 C:\Users\mathi\> .\docker.exe run -it ubuntu
      
      









おめでとうございます! WindowsでHyper-V分離を使用するコンテナーで動作するようにシステムを正常に構成し、独自のUbuntuコンテナーを起動しました。



助けて



Hyper-V用のUbuntuコンテナーイメージの使用を開始する際にサポートが必要な場合、または問題が発生した場合は、サポートが常にあります。






All Articles