Как установить Docker на Windows Server 2016 без Интернета?

Как установить Docker на Windows Server 2016 без Интернета?

Я пытаюсь установить docker на виртуальную машину Windows Server 2016, которая не подключена к Интернету. Официальная документация docker не дает никаких советов по установке на виртуальную машину Windows Server 2016 без Интернета, так как мне этого добиться?

Я где-то читал блог, в котором говорилось, что достаточно загрузить файлы docker.exe и dockerd.exe и поместить их в C:\Windows\System32, а затем запустить их, dockerd.exe --register-serviceчтобы установить Docker. Хотя это, похоже, "сработало" ( docker infoесть вывод), попытка извлечь образ из моего локального реестра не удалась (он просто зависает без вывода ошибок). Кроме того, я заметил, что нет настройки DockerNAT NIC, и я предполагаю, что есть и другие пропущенные шаги, о которых я не знаю.

решение1

На сайте Docker фактически задокументирован весь процесс.

  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. Скопируйте zip-файл на машину, на которую вы хотите установить Docker. В командной строке 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. Проверьте установку Docker EE, запустив контейнер hello-world.
docker container run hello-world:nanoserver

Установить Docker Enterprise Edition для Windows Server

Поскольку вы не указали, какую версию Windows Server вы используете, следующая информация может оказаться актуальной.

Docker Universal Control Plane в настоящее время не поддерживается в Windows Server 1709 из-за проблем с несовместимостью образов. Чтобы использовать UCP, на данный момент используйте текущий выпуск Windows LTSB, а не 1709.

Связанный контент