Tailwind Logo

Windows Server で Docker の環境を整える

Docker

公開日: 2021-05-22

今回は、Microsoft Azure 上で展開する仮想環境にて、Docker が動く環境を整備していきます。Windows 10 Pro では Docker for Desktop を利用する形が一番シンプルですが、今回は Windows Server 2019 ベースでの環境を整えていきます。

注意:この記事に記載している Linuxkit に関しては提供が終了しており、現在は利用することができません。

前提条件

今回、作業をしていく上での前提条件は以下のようにします。Azure での環境の整備なので、以下のようなマシンを準備しました。

  • Windows Server 2019
  • マシンサイズ Standard D8s v3
    • 8 vcpu
    • メモリ 32GB
server01.png

マシンの作成が完了したあと、リモートデスクトップでアクセスをしてください。Server Manager を起動して、メニューの Manage - Add Roles and Features を選択して、以下の機能を追加します。

まず最初に、Server Roles の画面で Hyper-V のチェックをします。

server02.png

続いて Features の画面で、Containers および Windows Subsystem for Linux を選択します。

server03.png
server04.png

Hyper-V に関してはデフォルトの設定でインストールを進めていきます。最後に Install のボタンを押して、インストールを完了させてください。インストールが完了すると、再起動して、Windows Server 2019 の環境に関しては準備が調います。

Docker の環境を整える

Windows Server で Docker を動かすための手順は、マイクロソフトの以下のサイトが参考になります。

PowerShell を管理者の権限で開き、PowerShell のギャラリーから、Docker-Microsoft PackageManagement Provider をインストールします。

PowerShell
Install-Module -Name DockerMsftProvider -Repository PSGallery -Force
docker01.png

PackageManagement PowerShell モジュールを使用して、最新バージョンの Docker をインストールします。

PowerShell
Install-Package -Name docker -ProviderName DockerMsftProvider
docker02.png

Sitecore のデモでは Linux のイメージも利用するため、LinuxKit をインストールします。まず、以下のサイトから release.zip をダウンロードします。

注意:この LinuxKit を利用した Linux Container on Windows は既にサポートが終了しています。当時の模様ということで参考までに残しておきますが、現在は利用できません。

ダウンロードしたファイルは、 C:\\Program Files\\Linux Containers のフォルダを作成して展開します。コピーしたファイルはダウンロード後ブロックされているため、ファイルのプロパティを開いて、ダイアログの一番下のチェックボックスをチェックして適用して、ブロックを解除してください。

docker03.png
linuxkit01.png

Windows コンテナと Linux コンテナを同時に動かすために、Experimental の設定を変更します。この設定は、 C:\ProgramData\docker\config\daemon.json のファイルを新規作成して、以下のコードを書き込んでください。ProgramData のフォルダは隠しフォルダになっていますので、直接 Explorer にパスを入れるなどで表示してください。

JSON
{
  "experimental": true
}
docker04.png

Docker の必要なモジュールのインストールが完了した段階で、一度再起動してください。

追加ソフトウェアのインストール

今回利用するソフトウェアのインストールに関して、chocolatey というツールを利用して進めていきます。

インストールの方法はシンプルで、PowerShell コンソールを管理者権限で開き、以下のコマンドを実行してください。

PowerShell
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
choco01.png

コマンドラインで choco を実行するとバージョンが表示されれば、インストールは成功しています。

choco02.png

Github のリポジトリを利用するため、最初に git for Windows をインストールします。

PowerShell
choco install git
choco03.png

Dokcer を利用するためのコマンド、 docker-compose を有効にするために、以下のコマンドを実行します。

PowerShell
choco install docker-compose
choco04.png

続いてコードの変更などで便利なので、Visual Studio Code をインストールします。

PowerShell
choco install vscode
choco05.png

ブラウザを動かすことができるように、Google Chrome をインストールします。

PowerShell

choco install googlechrome
choco06.png

Github Desktop をインストールしておくと便利なので、これは任意でご利用ください(今回の手順として特に必須ではありません)。

PowerShell
choco install github-desktop

choco07.png

まとめ

今回は Windows Server 2019 の上で Docker が動く環境まで整備をしました。これで Sitecore が提供するデモなど手軽に検証することができるようになりました。

関連タグ