web-dev-qa-db-ja.com

インターネットなしでWindowsServer 2016にDockerをインストールするにはどうすればよいですか?

DockerをWindowsServer2016にインストールしようとしていますVMインターネットに接続されていません。Dockerの公式ドキュメントには、Windows Server2016へのインストールに関するアドバイスはありませんVMインターネットなしで、どうすればこれを達成できますか?

Docker.exeファイルとdockerd.exeファイルをダウンロードしてC:\ Windows\System32に配置するだけで十分だというブログをどこかで読んだ後、dockerd.exe --register-serviceを実行するだけでDockerをインストールできました。これは「機能」しているように見えますが(docker infoが出力しています)、ローカルレジストリからイメージをプルダウンしようとすると失敗します(エラー出力なしでフリーズするだけです)。さらに、DockerNAT NIC=セットアップがないことに気づきました。私が知らない他のステップが欠けていると推測します。

3
riqitang

Docker Webサイトは実際にプロセス全体を文書化しました。

  1. PowerShellコマンドプロンプトで、接続されているマシンにインストーラーアーカイブをダウンロードします。
invoke-webrequest -UseBasicparsing -Outfile docker-17.06.2-ee-7.Zip https://download.docker.com/components/engine/windows-server/17.06/docker-17.06.2-ee-7.Zip
  1. DockerをインストールするマシンにZipファイルをコピーします。 PowerShellコマンドプロンプトで、次のコマンドを使用して、アーカイブを抽出し、登録して、Dockerサービスを開始します。
# Extract the archive.
Expand-Archive docker-17.06.2-ee-7.Zip -DestinationPath $Env:ProgramFiles

# Clean up the Zip file.
Remove-Item -Force docker-17.06.2-ee-7.Zip

# Install Docker. This requires rebooting.
$null = Install-WindowsFeature containers

# Add Docker to the path for the current session.
$env:path += ";$env:ProgramFiles\docker"

# Optionally, modify PATH to persist across sessions.
$newPath = "$env:ProgramFiles\docker;" +
[Environment]::GetEnvironmentVariable("PATH",
[EnvironmentVariableTarget]::Machine)

[Environment]::SetEnvironmentVariable("PATH", $newPath,
[EnvironmentVariableTarget]::Machine)

# Register the Docker daemon as a service.
dockerd --register-service

# Start the Docker service.
Start-Service docker
  1. Hello-worldコンテナーを実行して、Docker EEインストールをテストします。
docker container run hello-world:nanoserver

WindowsServer用のDockerEnterprise Editionをインストールします

使用しているWindowsServerのバージョンを提供できなかったため、次の情報が関連している可能性があります。

Docker Universal Control Planeは、イメージの非互換性の問題により、現在Windows Server1709ではサポートされていません。 UCPを使用するには、今のところ、1709ではなく現在のLTSBWindowsリリースを使用します。

6
Ramhound