인터넷 없이 Windows Server 2016에 Docker를 설치하는 방법은 무엇입니까?

인터넷 없이 Windows Server 2016에 Docker를 설치하는 방법은 무엇입니까?

인터넷에 연결되지 않은 Windows Server 2016 VM에 Docker를 설치하려고 합니다. 공식 Docker 문서에서는 인터넷 없이 Windows Server 2016 VM에 설치하는 것에 대한 조언을 제공하지 않습니다. 그렇다면 어떻게 이를 달성할 수 있습니까?

docker.exe 및 dockerd.exe 파일을 다운로드하여 C:\Windows\System32에 저장하면 dockerd.exe --register-serviceDocker를 설치하기에 충분하다는 블로그를 읽었습니다. 이것이 "작동한" 것처럼 보이지만( 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. 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

Windows Server용 Docker Enterprise Edition 설치

사용 중인 Windows Server 버전을 제공하지 못했으므로 다음 정보가 관련될 수 있습니다.

Docker 범용 제어 평면은 현재 이미지 비호환 문제로 인해 Windows Server 1709에서 지원되지 않습니다. UCP를 사용하려면 현재 1709가 아닌 현재 LTSB Windows 릴리스를 사용하세요.

관련 정보