시작: 첫 번째 Windows 컨테이너 실행
적용 대상: Windows Server 2022, Windows Server 2019, Windows Server 2016
이 문서에서는 시작: 컨테이너에 맞게 Windows 준비에 설명된 대로 환경을 설정한 후 첫 번째 Windows 컨테이너를 실행하는 방법을 설명합니다. 컨테이너를 실행하려면 먼저 컨테이너에 운영 체제 서비스의 기본 계층을 제공하는 기본 이미지를 다운로드합니다(컨테이너에서 끌어오기 작업이라고도 함). 그런 다음, 기본 이미지를 기반으로 컨테이너 이미지를 만들고 실행합니다. 자세한 내용을 보려면 계속 읽으십시오.
컨테이너 기본 이미지 끌어오기
모든 컨테이너는 컨테이너 이미지에서 만들어집니다. Microsoft는 선택할 수 있는 이미지(기본 이미지)를 몇 가지 제공합니다. 자세한 내용은 컨테이너 기본 이미지를 참조하세요. 이 절차는 경량 Nano 서버 기본 이미지를 끌어옵니다(다운로드 및 설치).
명령 프롬프트 창(예: 내장된 명령 프롬프트, PowerShell 또는 Windows 터미널)을 열고 다음 명령을 실행하여 기본 이미지를 다운로드하고 설치합니다.
docker pull mcr.microsoft.com/windows/nanoserver:ltsc2022
이미지를 가져오려고 할 때 Docker가 시작되지 않으면 Docker 디먼에 연결할 수 없는 것일 수 있습니다. 이 문제를 해결하려면 Docker 서비스를 다시 시작해 보세요.
팁
no matching manifest for linux/amd64 in the manifest list entries
라는 오류 메시지가 표시되면 Docker가 Linux 컨테이너를 실행하도록 구성되어 있지 않은지 확인합니다. Docker에서 Windows 컨테이너로 전환하려면 마우스 오른쪽 단추로 Docker 아이콘을 클릭하고 Windows 컨테이너로 전환을 선택합니다. 명령줄을 사용하여 컨테이너 간에 전환하려면& $Env:ProgramFiles\Docker\Docker\DockerCli.exe -SwitchDaemon
를 실행합니다.이미지 다운로드가 완료되면(기다리는 동안 EULA를 확인하세요) 로컬 Docker 이미지 리포지토리를 쿼리하여 시스템에 이미지가 있는지 확인합니다.
docker images
명령을 실행하면 설치된 이미지 목록이 반환됩니다.다음은 Nano 서버 이미지를 보여주는 출력의 예입니다.
REPOSITORY TAG IMAGE ID CREATED SIZE microsoft/nanoserver latest 105d76d0f40e 4 days ago 652 MB
Windows 컨테이너 실행
여기 간단한 예제에서는 'Hello World' 컨테이너 이미지를 만들고 배포합니다. 최상의 환경을 위해 관리자 권한 명령 프롬프트 창에서 다음 명령을 실행합니다. (단, Windows PowerShell ISE는 사용하지 마십시오. 컨테이너가 중단된 것처럼 보여서 컨테이너와의 대화형 세션에서 작동하지 않습니다.)
명령 프롬프트 창에 다음 명령을 입력하여
nanoserver
이미지에서 대화형 세션으로 컨테이너를 시작합니다.docker run -it mcr.microsoft.com/windows/nanoserver:ltsc2022 cmd.exe
컨테이너가 시작되면 명령 프롬프트 창이 컨텍스트를 컨테이너로 변경합니다. 컨테이너 내에서 다음 명령을 입력하여 간단한 'Hello World'텍스트 파일을 만든 후 컨테이너를 종료합니다.
echo "Hello World!" > Hello.txt exit
docker ps 명령을 실행하여 방금 종료한 컨테이너의 컨테이너 ID를 가져옵니다.
docker ps -a
처음 실행한 컨테이너의 변경 내용이 포함된 'HelloWorld' 이미지를 새로 만듭니다. 이렇게 하려면
<containerid>
를 컨테이너의 ID로 바꿔서 docker commit 명령을 실행합니다.docker commit <containerid> helloworld
완료되면 hello world 스크립트가 포함된 사용자 지정 이미지가 생깁니다. docker images 명령으로 볼 수 있습니다.
docker images
출력 예는 다음과 같습니다.
REPOSITORY TAG IMAGE ID CREATED SIZE helloworld latest a1064f2ec798 10 seconds ago 258MB mcr.microsoft.com/windows/nanoserver 2022 2b9c381d0911 3 weeks ago 256MB
마지막으로 docker run 명령을
--rm
(명령줄(cmd.exe)이 중지되면 컨테이너를 자동으로 제거함) 매개 변수와 함께 사용하여 새 컨테이너를 실행합니다.docker run --rm helloworld cmd.exe /s /c type Hello.txt
그 결과, Docker는 'HelloWorld' 이미지에서 컨테이너를 만들었고, Docker는 컨테이너에서 cmd.exe 인스턴스를 시작했으며, cmd.exe는 파일을 읽고 콘텐츠를 셸에 출력했습니다. 마지막 단계로 Docker는 컨테이너를 중지하고 제거했습니다.
Windows Admin Center를 사용하여 Windows 컨테이너 실행
Windows Admin Center를 사용하여 컨테이너를 로컬에서 실행할 수 있습니다. 특히 Windows Admin Center 인스턴스의 컨테이너 확장을 사용하여 컨테이너를 실행합니다. 먼저 관리할 컨테이너 호스트를 열고 도구 창에서 컨테이너 확장을 선택합니다. 그런 다음, 컨테이너 호스트 아래의 컨테이너 확장에서 이미지 탭을 선택합니다.
호스트에 기본 컨테이너 이미지가 없는 경우 끌어오기 옵션을 선택하여 컨테이너 이미지 끌어오기 설정을 엽니다.
컨테이너 이미지 끌어오기 설정에서 이미지 URL 및 태그를 제공합니다. 어떤 이미지를 끌어올지 잘 모르는 경우를 위해 Windows Admin Center는 Microsoft의 일반 이미지 목록을 제공합니다. 프라이빗 리포지토리에서 이미지를 끌어올 수 있는 자격 증명을 제공할 수도 있습니다. 필요한 정보를 입력한 후 끌어오기를 클릭합니다. Windows Admin Center는 컨테이너 호스트에서 끌어오기 프로세스를 시작합니다. 다운로드가 완료되면 이미지 탭에 새 이미지가 표시됩니다.
실행할 이미지를 선택하고 실행을 클릭합니다.
실행 메뉴에서 컨테이너 이름, 격리 유형, 게시할 포트, 메모리 및 CPU 할당과 같은 컨테이너 구성을 설정합니다. 또한 영구 볼륨의 -v와 같이 UI에 없는 Docker 실행 명령을 추가할 수 있습니다. 사용 가능한 Docker 실행 매개 변수에 대한 자세한 내용은 설명서를 참조하세요.
컨테이너 구성을 마쳤으면 실행을 클릭합니다. 컨테이너 탭에서 실행 중인 컨테이너의 상태를 확인할 수 있습니다.