데브시스터즈는 Kubernetes 기반의 게임 개발 및 테스트 인프라를 성공적으로 구축하 여 게임 출시에 이르는 모든 과정들을 효율적으로 처리하고 있습니다.
다년간의 성공적인 운영 경험을 바탕으로 Windows Server 기반의 Workload를 지원하기 위한 R&D 작업을 진행하였고, 그 경험담을 공유하는 아티클 시리즈를 몇 편에 걸쳐 DevTech 기술 블로그에 연재할 예정입니다.
Windows 컨테이너 시리즈 글 보기
- Windows 컨테이너에 대한 이해
- Windows 컨테이너 개발 환경 구축하고 테스트하기
- NT 서비스를 Windows 컨테이너로 마이그레이션하기
- 베이스 이미지, 격리 방식에 대한 이해
#시작하기에 앞서
앞의 글에서는 Windows 컨테이너가 무엇이고, 왜 사용하는지, 그리고 리눅스 컨테이너와 기술적으로 어떤 차이가 있는지 살펴보았습니다. 이번 글에서는 실제로 Windows 컨테이너를 사용하기 위해 어떻게 환경을 만들고 준비할 수 있는지 살펴볼 것입니다.
#준비물
Windows 컨테이너를 개발하고 테스트하기 위하여 선택할 수 있는 가장 쉬운 방법은 Hyper-V를 사용할 수 있는 Windows 10 호환 컴퓨터나 노트북을 사용하는 것입니다. 다만 주의할 것이 있습니다.
- 일부 저가형 컴퓨터나 구형 컴퓨터는 CPU 가상화 기능을 처음부터 제공하지 않도록 기능이 막혀있는 경우가 있을 수 있으므로 반드시 CPU 가상화 기술을 사용할 수 있는 컴퓨터인지 확인합니다.
- Windows 10 S Mode가 켜져있을 경우 S Mode를 해제해야 합니다. S Mode를 해제하는 자세한 방법은 이 문서를 참고하세요. 단, 한 번 해제하면 다시 S Mode로 돌아올 수 없습니다.
만약 Windows 10 Home 버전을 사용 중이거나, macOS나 리눅스 환경 안에서 작업하기를 원한다면 Windows 10과 개발 도구가 모두 설치된 가상 컴퓨터 이미지를 Microsoft에서 내려받아서 이용할 수 있습니다.
이 방법을 사용하면 별도의 라이선스를 취득하지 않아도 지정된 기한 내에 개발 목적으로 자유롭게 Windows 10 개발 환경을 이용할 수 있습니다. 다만 컨테이너 빌드 과정에서 오버헤드가 더 클 수 있습니다.
웹 사이트에서 가상 머신 소프트웨어 종류 별로 이미지가 각각 제공되므로 적절한 파일을 다운로드해서 사용할 수 있습니다.
#가상화 또는 중첩 가상화 지원 여부 확인하기
실제 컴퓨터의 경우 사용 중인 프로세서가 가상화를 지원하는지 여부, 가상 컴퓨터를 사용하는 경우 하이퍼바이저가 중첩 가상화를 지 원하는지 여부를 다시 한 번 확인하도록 합니다.
가상화나 중첩 가상화를 어떻게 활성화하고 사용할 수 있는지에 대해서는 방법이 매우 다양하기 때문에 이 글에서는 다루기 어렵습니다. 하지만 Docker for Desktop을 사용하려면 반드시 가상화 기능이 호스트에서 지원되어야합니다.
⚠️ 만약 UEFI와 BitLocker를 사용하는 컴퓨터에서 UEFI 상의 가상화 지원 설정을 변경할 경우 다음번 시스템 시작 시 Windows OS가 잠길 수 있습니다. 이 때는 BitLocker 복구 키를 입력해주어야만 하므로, 계속 하기 전에 BitLocker 복구 키를 미리 메모한 후 작업하시는 것이 안전합니다.
#Docker for Desktop 설치하기
ℹ️ 이 글에서 설명하는 Windows 컨테이너 개발은 반드시 Docker Desktop 2.0 이상의 버전이 필요합니다. Docker Toolbox for Windows는 Windows 컨테이너 개발을 지원하지 않는 버전이므로 혼동해서 설치하지 않도록 주의해야 합니다.
Windows 10 실행 환경이 준비되면, Docker for Desktop을 설치하고 구성할 차례입니다.
이후에는 설치 마법사의 안내에 따라 설치를 진행하도록 합니다. 특별히 변경할 옵션 없이 설치를 완료하고, 시스템을 다시 시작하거나 로그오프 등이 필요하다는 안내 문구가 나오면 그대로 따릅니다.
설치한 후에는 Docker Desktop을 시작 메뉴의 검색 기능을 이용하여 아래 그림과 같이 실행할 수 있습니다.
Docker Desktop을 실행하면 작업 표시줄의 트레이 아이콘에 고래 모양의 아이콘이 아래 그림과 같이 표시됩니다. 처음에 시작하는 과정에서 트레이 아이콘에 애니메이션이 계속 재생되는데, 멈출 때까지 기다리도록 합니다.
