적용 대상: Windows Server 2025, Windows Server 2022, Windows Server 2019, Windows Server 2016
이 문서에서는 시작: 컨테이너용 Windows 준비에 설명된 대로 환경을 설정한 후 첫 번째 Windows 컨테이너를 실행하는 방법을 보여 줍니다. 컨테이너를 실행하려면 다음 두 가지 일반적인 단계가 포함됩니다.
- 기본 이미지 다운로드 컨테이너를 사용하면 기본 이미지를 다운로드하는 프로세스를 끌어오기 작업이라고 합니다. 기본 이미지는 컨테이너에 운영 체제 서비스의 기본 계층을 제공합니다.
- 기본 이미지를 기반으로 하는 컨테이너 이미지 만들기 및 실행
컨테이너 기본 이미지 끌어오기
모든 컨테이너는 컨테이너 이미지에서 만들어집니다. Microsoft는 기본 이미지라고 하는 몇 가지 시작 이미지를 선택할 수 있습니다. 자세한 내용은 컨테이너 기본 이미지를 참조하세요.
다음 절차를 사용하여 경량 Nano Server 기본 이미지를 끌어오 거나, 즉 해당 이미지를 다운로드하여 설치할 수 있습니다.
기본 제공 명령 프롬프트, PowerShell 또는 Windows 터미널과 같은 콘솔 창을 엽니다.
다음 명령을 실행하여 기본 이미지를 다운로드하고 설치합니다.
docker pull mcr.microsoft.com/windows/nanoserver:ltsc2022기다리는 동안 이미지에 대한 추가 라이선스 조건을 읽어보십시오.
이미지를 끌어오려고 할 때 Docker가 시작되지 않으면 Docker 디먼에 연결할 수 없을 수 있습니다. 이 문제를 해결하려면 Docker 서비스를 다시 시작합니다.
팁
"매니페스트 목록 항목에 Linux/amd64에 대한 일치하는 매니페스트 없음" 오류 메시지가 표시되면 Windows 컨테이너 대신 Linux 컨테이너를 실행하도록 Docker가 구성될 수 있습니다. Docker에서 Windows 컨테이너로 전환하려면 다음 단계 중 하나를 수행합니다.
- Windows 시스템 트레이에서 Docker 아이콘을 마우스 오른쪽 단추로 클릭한 다음 Windows 컨테이너로 전환을 선택합니다.
- 명령 프롬프트에서
& $Env:ProgramFiles\Docker\Docker\DockerCli.exe -SwitchDaemon을 실행합니다.
로컬 Docker 이미지 리포지토리를 쿼리하여 시스템에 이미지가 있는지 확인합니다. 설치된 이미지 목록을 반환하는 명령을 실행
docker images하여 이 검사를 수행할 수 있습니다.다음은 Nano 서버 이미지를 보여 주는 해당 명령의 출력 예제입니다.
REPOSITORY TAG IMAGE ID CREATED SIZE mcr.microsoft.com/windows/nanoserver ltsc2022 4f0ead5b1b67 6 days ago 296MB
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명령을 실행하여 방금 종료한 컨테이너의 컨테이너 ID를 가져옵니다.
docker psdocker ps -a실행한 첫 번째 컨테이너의 변경 내용을 포함하는 새
helloworld이미지를 만듭니다. 이렇게 하려면docker commit명령을 실행하고,<container-ID>을(를) 컨테이너 ID로 교체하십시오.docker commit <container-ID> helloworld이제 Hello.txt 파일이 포함된 사용자 지정 이미지가 있습니다. 명령을
docker images사용하여 새 이미지를 볼 수 있습니다.docker images출력의 예는 다음과 같습니다.
REPOSITORY TAG IMAGE ID CREATED SIZE helloworld latest 81013d6b73ae 25 seconds ago 299MB mcr.microsoft.com/windows/nanoserver ltsc2022 4f0ead5b1b67 6 days ago 296MBdocker run명령에--rm옵션을 사용하여 새 컨테이너를 실행합니다. 이 옵션을 사용하면 이 경우 명령cmd.exe이 중지되면 Docker에서 컨테이너를 자동으로 제거합니다.docker run --rm helloworld cmd.exe /s /c type Hello.txtDocker는
helloworld이미지에서 컨테이너를 생성하고 그 컨테이너에서cmd.exe인스턴스를 시작합니다. 이 프로세스는cmd.exeHello.txt 파일을 읽고 콘솔 창에 내용을 씁니다. 마지막 단계로 Docker는 컨테이너를 중지하고 제거합니다.
Windows Admin Center를 사용하여 Windows 컨테이너 실행
Windows Admin Center를 사용하여 컨테이너를 로컬로 실행할 수 있습니다. 특히 이러한 용도로 Windows Admin Center의 컨테이너 확장을 사용할 수 있습니다.
컨테이너 이미지 보기
컨테이너 이미지 끌어오기
호스트에 기본 컨테이너 이미지가 없는 경우 끌어오기를 선택하여 컨테이너 이미지 끌어오기 대화 상자를 엽니다.
컨테이너 이미지 끌어오기 대화 상자에서 이미지 URL과 태그를 입력합니다.
- 끌어올 이미지가 확실하지 않은 경우 Common Windows 이미지를 확장하여 Microsoft의 일반 이미지 목록을 표시합니다.
- 프라이빗 리포지토리에서 이미지를 끌어오려면 레지스트리 인증 을 확장하여 자격 증명을 입력합니다.
끌어오기 선택 Windows Admin Center는 컨테이너 호스트에서 끌어오기 프로세스를 시작합니다. 다운로드가 완료되면 이미지 탭에 새 이미지가 표시됩니다.
이미지 실행
실행할 이미지를 선택한 다음 실행을 선택합니다. 이미지 실행 대화 상자가 열립니다.
이미지 실행 대화 상자에서 컨테이너 이름, 격리 유형, 게시할 포트, 메모리 및 CPU 할당과 같은 컨테이너를 구성하는 정보를 입력합니다.
docker run명령에 영구 볼륨을 지정하는-v옵션 등의 선택사항을 추가할 수도 있습니다. 사용 가능한docker run매개 변수에 대한 자세한 내용은 을 참조하세요docker container run.실행을 선택합니다. 컨테이너 탭에는 실행 중인 컨테이너의 상태가 표시됩니다.