윈도우 개발
개발 중에 윈도우 개발 머신이 필요한 경우가 있습니다.
이 가이드는 GitLab 공유 윈도우 러너와 동일한 사전 설치된 도구를 갖춘 윈도우 개발 가상 머신을 Google Cloud Platform(GCP)에서 설정하는 방법을 설명합니다.
왜 Google Cloud에서 윈도우인가?
회사 노트북에서 Microsoft Windows 운영 체제의 사용은 GitLab 승인된 운영 체제 정책에 따라 금지되어 있습니다.
이로 인해 윈도우 플랫폼의 기능을 개발하는 데 어려움이 있을 수 있습니다. GCP를 사용하면 완료 후 제거할 수 있는 임시 윈도우 머신을 가질 수 있습니다.
공유 윈도우 러너
전체 윈도우 개발 머신이 필요하지 않은 경우 공유 윈도우 러너를 사용할 수 있습니다.
GitLab 12.7 릴리즈 게시물과 윈도우 공유 러너 베타 블로그 게시물에서는 유용한 정보를 많이 제공합니다.
공유 윈도우 러너를 사용하려면 .gitlab-ci.yml
파일의 관련 작업에 다음 tags
를 추가하세요:
tags:
- shared-windows
- windows
- windows-1809
윈도우 이미지에 사전 설치된 소프트웨어 목록은 다음에서 확인할 수 있습니다: 사전 설치된 소프트웨어.
개발을 위한 GCP 윈도우 이미지
공유 윈도우 GitLab 러너는 Packer로 구축됩니다.
Google Cloud 이미지를 구축하기 위한 인프라스트럭처 코드 저장소는 다음에서 확인할 수 있습니다: GitLab Google Cloud Platform Shared Runner Images.
이미지 빌드
귀하의 Google Cloud 그룹에 이미지가 이미 생성되어 있을 수 있습니다.
자신의 이미지를 구축하기 전에 사용할 수 있는 이미지를 검색하세요.
위의 공유 러너 저장소로 Google Cloud 이미지를 빌드하려면 다음을 수행하세요:
- Packer를 설치하세요 (버전 1.5.1에서 작동하는 것으로 테스트됨).
- Packer Windows Update Provisioner를 설치하세요.
- 저장소 https://github.com/rgl/packer-provisioner-windows-update를 클론하고 클론한 디렉터리로
cd
하세요. -
go build -o packer-provisioner-windows-update
명령을 실행하세요 (설치를 위해go
가 필요합니다). -
packer-provisioner-windows-update
가PATH
환경 변수에 있는지 확인하세요.
- 저장소 https://github.com/rgl/packer-provisioner-windows-update를 클론하고 클론한 디렉터리로
-
필수 환경 변수를
packer.json
파일에서 환경에 추가하세요 (아마도direnv
를 사용할 수 있습니다). - 명령어:
packer build packer.json
을 실행하여 이미지를 빌드하세요.
GCP에서 Windows 이미지 사용 방법
-
웹 브라우저에서 Google Cloud Platform 콘솔로 이동합니다.
-
이미지를 생성할 때 사용한 이름으로 이미지를 필터링합니다.
windows
로 필터링하면 될 것입니다. -
이미지의 이름을 선택합니다.
-
인스턴스 만들기를 선택합니다.
-
중요한 사항: 나중에 변경할 수 없으므로 원하는 이름으로 변경합니다.
-
선택 사항: 가까운 리전으로 변경하고, 원하는 다른 옵션을 설정합니다.
-
페이지 하단의 만들기를 선택합니다.
-
새로 생성한 VM 인스턴스의 이름을 선택합니다(옵션으로 필터를 적용하여 찾을 수 있습니다).
-
Windows 비밀번호 설정을 선택합니다.
-
선택 사항: 사용자 이름을 설정하거나 기본값을 사용합니다.
-
다음을 선택합니다.
-
비밀번호를 복사하고 저장합니다. 다시 표시되지 않기 때문입니다.
-
RDP 아래 화살표를 선택합니다.
-
RDP 파일 다운로드를 선택합니다.
-
다운로드한 RDP 파일을 Windows 원격 데스크톱 앱으로 엽니다(https://learn.microsoft.com/en-us/windows-server/remote/remote-desktop-services/clients/remote-desktop-clients).
-
인증서를 수락하려면 계속을 선택합니다.
-
비밀번호를 입력하고 다음을 선택합니다.
이제 Windows 머신에 연결되어 명령 프롬프트를 사용할 수 있습니다.
선택 사항: GCP VM 인스턴스를 러너로 사용하기
- 프로젝트에 러너 등록하기:
gitlab-runner.exe register
. - 러너 설치하기:
gitlab-runner.exe install
. - 러너 시작하기:
gitlab-runner.exe start
.
자세한 내용은 Windows에 GitLab Runner 설치 및 러너 등록을 참조하세요.
개발자 팁
GCP 및 Windows에 대한 몇 가지 팁입니다.
GCP 비용 절감
GCP VM 인스턴스를 사용하지 않을 때는 중지하여 비용을 최소화하세요.
그렇게 하면 IP 주소가 매번 중지하고 시작할 때 변경되므로 콘솔에서 RDP 파일을 다시 다운로드해야 합니다.
chocolatey
Chocolatey는 Windows용 패키지 관리자입니다. https://chocolatey.org/에서 패키지를 검색할 수 있습니다.
choco install vim
Visual Studio (전체 GUI용 설치/사용)
Visual Studio를 설치하고 Windows 원격 데스크톱 앱 내에서 실행할 수 있습니다.
다음 명령어로 설치합니다: choco install visualstudio2019community
다음 명령어로 실행합니다: "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\IDE\devenv.exe" .
.NET 3 지원
다음 DISM
명령어로 .NET 버전 3 지원을 설치할 수 있습니다:
DISM /Online /Enable-Feature /FeatureName:NetFx3 /All
nix -> Windows cmd
팁
Windows 명령 셸을 사용하는 첫 번째 팁은 PowerShell을 열고 대신 사용하는 것입니다.
PowerShell 시작: start powershell
.
PowerShell은 다음 모든 명령에 대한 별칭을 제공하므로 기본 명령을 배울 필요가 없습니다:
-
ls
—>dir
-
rm
—>del
-
rm -rf nonemptydir
—>rmdir /S nonemptydir
-
/
—>\
(경로 구분 기호) -
cat
—>type
-
mv
—>move
- 리디렉션은 동일하게 작동합니다 (예:
>
및2>&1
) -
.\some.exe
로 로컬 실행 파일 호출 - curl 사용 가능
-
..
및.
사용 가능