이 블로그는 여러 편으로 구성된 시리즈의 첫 번째 글입니다. 첫 번째 파트에서는 다음을 설정하는 방법을 보여주었습니다. 버추얼박스 가상 머신으로서의 윈도우 서버 2016. 이 두 번째 파트에서는 Windows 2016 VM에서 Docker를 구성하는 방법을 설명합니다.
- 상승된 PowerShell 세션을 시작합니다:

- 스크립트를 실행하여 Docker를 설치합니다:
123Install-Module -Name DockerMsftProvider -Repository PSGallery -ForceInstall-Package -Name docker -ProviderName DockerMsftProviderRestart-Computer -Force
그러면 PowerShell 모듈이 설치되고 컨테이너 기능이 활성화되며 Docker가 설치됩니다.컨테이너를 사용하려면 VM을 다시 시작해야 합니다. 다음을 참조하세요. 컨테이너 호스트 배포 - 윈도우 서버 를 클릭해 자세한 안내를 확인하세요.
- VM이 재부팅됩니다. PowerShell을 시작하고 다음을 사용하여 Docker 버전을 확인합니다.
도커 버전명령을 사용합니다:
Docker에 대한 자세한 내용은 다음을 사용하여 확인할 수 있습니다. 도커 정보명령을 사용합니다:
- 를 사용하여 첫 번째 Docker 컨테이너를 실행합니다.
도커 실행 -it -p 80:80 마이크로 소프트/iis명령을 사용합니다:
Microsoft IIS 서버 도커 이미지가 다운로드됩니다. 시간이 좀 걸릴 수 있으니 조금만 기다려주세요! - 8.9GB 이미지가 다운로드되면(잠시 후) IIS 서버가 시작됩니다. 이미지 목록을 확인하려면
도커 이미지명령과 실행 중인 컨테이너 목록을 사용하여도커 PS명령을 사용합니다:
컨테이너에 대한 자세한 내용은 다음을 사용하여 확인할 수 있습니다. 도커 인스펙트명령을 사용합니다:123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184[{"Id": "c15555e4b60ec24bbad2b8834c82e14313d193e07da2ca7d3948802e36f4d828","Created": "2016-10-27T23:45:20.4069634Z","Path": "C:\ServiceMonitor.exe","Args": ["w3svc"],"State": {"Status": "running","Running": true,"Paused": false,"Restarting": false,"OOMKilled": false,"Dead": false,"Pid": 4228,"ExitCode": 0,"Error": "","StartedAt": "2016-10-27T23:45:34.5990616Z","FinishedAt": "0001-01-01T00:00:00Z"},"Image": "sha256:b6a44de60ef92f9eceb68effcfc5fdbd5ecb53677e8c4f1e8dcd02b0c11cb760","ResolvConfPath": "","HostnamePath": "","HostsPath": "","LogPath": "C:\ProgramData\docker\containers\c15555e4b60ec24bbad2b8834c82e14313d193e07da2ca7d3948802e36f4d828\c15555e4b60ec24bbad2b8834c82e14313d193e07da2ca7d3948802e36f4d828-json.log","Name": "/cocky_mahavira","RestartCount": 0,"Driver": "windowsfilter","MountLabel": "","ProcessLabel": "","AppArmorProfile": "","ExecIDs": null,"HostConfig": {"Binds": null,"ContainerIDFile": "","LogConfig": {"Type": "json-file","Config": {}},"NetworkMode": "default","PortBindings": {"80/tcp": [{"HostIp": "","HostPort": "80"}]},"RestartPolicy": {"Name": "no","MaximumRetryCount": 0},"AutoRemove": false,"VolumeDriver": "","VolumesFrom": null,"CapAdd": null,"CapDrop": null,"Dns": [],"DnsOptions": [],"DnsSearch": [],"ExtraHosts": null,"GroupAdd": null,"IpcMode": "","Cgroup": "","Links": null,"OomScoreAdj": 0,"PidMode": "","Privileged": false,"PublishAllPorts": false,"ReadonlyRootfs": false,"SecurityOpt": null,"UTSMode": "","UsernsMode": "","ShmSize": 0,"ConsoleSize": [50,120],"Isolation": "process","CpuShares": 0,"Memory": 0,"CgroupParent": "","BlkioWeight": 0,"BlkioWeightDevice": null,"BlkioDeviceReadBps": null,"BlkioDeviceWriteBps": null,"BlkioDeviceReadIOps": null,"BlkioDeviceWriteIOps": null,"CpuPeriod": 0,"CpuQuota": 0,"CpusetCpus": "","CpusetMems": "","Devices": [],"DiskQuota": 0,"KernelMemory": 0,"MemoryReservation": 0,"MemorySwap": 0,"MemorySwappiness": -1,"OomKillDisable": false,"PidsLimit": 0,"Ulimits": null,"CpuCount": 0,"CpuPercent": 0,"IOMaximumIOps": 0,"IOMaximumBandwidth": 0},"GraphDriver": {"Name": "windowsfilter","Data": {"dir": "C:\ProgramData\docker\windowsfilter\c15555e4b60ec24bbad2b8834c82e14313d193e07da2ca7d3948802e36f4d828"}},"Mounts": [],"Config": {"Hostname": "c15555e4b60e","Domainname": "","User": "","AttachStdin": true,"AttachStdout": true,"AttachStderr": true,"ExposedPorts": {"80/tcp": {}},"Tty": true,"OpenStdin": true,"StdinOnce": true,"Env": null,"Cmd": null,"ArgsEscaped": true,"Image": "microsoft/iis","Volumes": null,"WorkingDir": "","Entrypoint": ["C:\ServiceMonitor.exe","w3svc"],"OnBuild": null,"Labels": {}},"NetworkSettings": {"Bridge": "","SandboxID": "b23c5766990bb9373e6cbb69cb54b011f57974ed381e60c1eacb7c3c47e303b2","HairpinMode": false,"LinkLocalIPv6Address": "","LinkLocalIPv6PrefixLen": 0,"Ports": {"80/tcp": [{"HostIp": "0.0.0.0","HostPort": "80"}]},"SandboxKey": "b23c5766990b","SecondaryIPAddresses": null,"SecondaryIPv6Addresses": null,"EndpointID": "","Gateway": "","GlobalIPv6Address": "","GlobalIPv6PrefixLen": 0,"IPAddress": "","IPPrefixLen": 0,"IPv6Gateway": "","MacAddress": "","Networks": {"nat": {"IPAMConfig": null,"Links": null,"Aliases": null,"NetworkID": "9ae352610731342dde19246e759944e79af7a19077d879024a17cedca4b061c9","EndpointID": "198d0a52838f1e5178b3fedc154e9f18409c13f0de489e99c06faf9ed2fbedd9","Gateway": "","IPAddress": "172.26.192.89","IPPrefixLen": 16,"IPv6Gateway": "","GlobalIPv6Address": "","GlobalIPv6PrefixLen": 0,"MacAddress": "00:15:5d:7e:60:60"}}}}] - 컨테이너의 정확한 IP 주소는 다음 명령을 사용하여 찾을 수 있습니다:
1docker inspect --format '{{ NetworkSettings.Networks.nat.IPAddress }}' cocky_mahavira
IIS 메인 페이지는 아래 그림과 같이 https:// 에서 액세스할 수 있습니다:
다음 파트에서는 Windows Server 2016에서 자신만의 Docker 이미지를 만드는 방법을 보여드리겠습니다.

