Windows에 Vagrant를 사용하여 개발 환경 만들기

빠르게 변화하는 소프트웨어 개발 세계에서는 효율이 최고입니다. 신속한 개발, 테스트 및 배포 주기는 성공에 중요하지만 여러 환경과 플랫폼을 동시에 다루는 것은 실력있는 개발자조차도 무겁게 만듭니다. 그러나 Windows에서 일관된 개발 환경을 제공하는 Vagrant가 있으면 다릅니다!

이 튜토리얼은 Windows 기기에 Vagrant를 설치하고 시작하는 방법을 안내합니다.

Vagrant를 사용하여 개발 프로세스를 강화해 보세요!

필수 사항

개발 환경을 생성하기 전에 이 튜토리얼을 따라가기 위해 다음 사항을 준비하세요:

  • A Windows machine – This tutorial uses a Windows 10 system.
  • 가상화 소프트웨어, 예를 들면 VirtualBox, Hyper-V 및 VMware 제품 (Workstation, Player, 또는 Fusion) – 이 자습서는 대부분의 사용자에게 무료로 권장되는 VirtualBox를 사용합니다.

Vagrant 설치 프로그램 다운로드

Vagrant는 기본 호스트 시스템에 관계없이 개발자들이 격리되고 반복 가능한 환경에서 작업할 수 있도록 합니다. 그러나 가상 개발 환경을 만드는 이 여정에는 먼저 Vagrant를 설정해야 합니다.

이 강력한 도구를 Windows 환경에 원활하게 통합하려면 다음을 수행하세요:

1. 선호하는 웹 브라우저를 시작하고 공식 Vagrant 다운로드 페이지를 방문합니다.

Accessing the Vagrant download page

2. 가장 최신의 Vagrant 릴리스를 식별하고 버전 드롭다운 메뉴에서 선택합니다. 현재 최신 버전은 2.4.1입니다.

Selecting the latest Vagrant version

3. 이제 Windows 섹션으로 스크롤하여 시스템 아키텍처에 따라 다운로드 링크를 클릭하여 설치 프로그램을 다운로드합니다(즉, vagrant_2.4.1_windows_amd64).

아래에 두 가지 옵션이 있습니다:

  • i686 – 32비트 버전을 실행하는 Windows용.
  • AMD64 – 64비트 아키텍처를 실행하는 Windows용.
Downloading Vagrant for Windows

4. 다운로드가 완료되면 관리자 권한으로 PowerShell을 열고 Vagrant 설치 프로그램의 위치(즉, ~/Downloads)로 이동한 후 다음 코드를 실행합니다.

이 코드는 Vagrant 설치 프로그램의 체크섬을 확인합니다. 이렇게 함으로써 Vagrant 설치 프로그램의 신뢰성을 보장하고 다운로드 프로세스 중에 수정되지 않았음을 확인합니다.

# Vagrant 설치 프로그램의 예상되는 SHA256 해시 값 정의
$expectedHash = 'fc3806e071b7af2067eec5e8dfbe9f2dfe2c46139c5d682bb7defd7a2f9083e9'

# 다운로드한 파일의 실제 SHA256 해시 값 계산
$fileHash = (Get-FileHash -Path .\\vagrant_2.4.1_windows_amd64.msi -Algorithm SHA256).Hash

# 예상 해시 값과 실제 해시 값 비교
if ($fileHash -eq $expectedHash) {
    # 해시 값이 일치하는 경우, 유효성 검사 메시지 출력
    Write-Host "The hash matches, the file is valid."
} else {
    # 해시 값이 일치하지 않는 경우, 경고 메시지 출력
    Write-Host "The hash does not match, the file may be corrupted or tampered with."
}
Verifying the downloaded Vagrant installer

? Vagrant 버전이 2.4.1과 다른 경우, 릴리스 정보 섹션으로 스크롤하고 제공된 하이퍼링크를 클릭하십시오. 이 작업은 Vagrant 버전에 해당하는 다양한 OS 및 아키텍처의 체크섬을 포함하는 .1_SHA256SUMS 파일을 다운로드합니다

Downloading a .1_SHA256SUMS file containing checksums

Windows에 Vagrant 설치

당신은 Vagrant 설치 프로그램을 다운로드하고 확인했지만, 적절한 설치 없이는 도구들은 무용지물로 남아 있어 당신의 노력을 돕지 못합니다.

Vagrant 설치 프로그램을 다운로드하고 확인한 후, 다음 중요한 단계는 도구들이 당신의 노력을 지원할 수 있도록 하는 것입니다 – 적절한 Vagrant 설치입니다.

Windows 시스템에 Vagrant를 설치하려면 다음 단계를 따르십시오:

1. 다운로드한 Vagrant 설치 프로그램을 두 번 클릭하여 설치를 시작하고 Vagrant 설정 마법사를 실행합니다.

2. 다음으로, 아래의 확인란을 선택하고 설치를 클릭하여 라이선스 동의를 받아들이고 설치를 진행합니다.

설치가 완료될 때까지 프로세스를 방해하지 않고 설치를 기다립니다.

Installing Vagrant on Windows

3. 설치가 완료되면 설정 마법사를 닫으려면 완료를 클릭하고 프롬프트가 나타나면 시스템을 다시 시작합니다.

Finishing the installation

4. 마지막으로, 다음 명령을 실행하여 Vagrant --version을 확인하여 설치를 검증합니다.

vagrant --version
Verifying the Vagrant installation

Windows에서 개발을 위해 Vagrant 활용

Windows 시스템에 Vagrant를 설치했으므로 이제 소프트웨어가 모든 환경에서 일관되게 실행되도록 보장할 준비가 되었습니다. 이 일관성은 소프트웨어 개발에서 가장 큰 도전 중 하나입니다.

다행히도 Vagrant를 사용하면 개발 환경을 프로덕션 환경과 가장 유사하게 만들 수 있습니다. Vagrant를 사용하면 Linux 기반의 개발 환경을 만들어 “내 컴퓨터에서는 작동합니다” 문제를 해결할 수 있습니다.

Vagrant를 사용하여 기본 개발 환경을 설정하려면 다음 단계를 따르세요:

1. PowerShell에서 다음 명령을 실행하여 (mkdir) 새 프로젝트 디렉터리를 만들고 (cd) vagrant_windows라고 하는 새 프로젝트 디렉터리로 이동합니다(임의로).

mkdir ~/vagrant_windows
cd vagrant_windows
Creating a project directory

다음으로 아래의 vagrant 명령어를 실행하여 새로운 Vagrant 환경을 시작하십시오. 이 명령은 프로젝트 디렉토리에 Vagrantfile을 생성합니다.

Vagrantfile은 환경 구성에 중요합니다. 어떻게요? 새로운 팀원들이 프로젝트에 합류할 때, 그들은 종종 개발 환경을 설정하는 데 상당한 시간을 소비합니다. Vagrant는 이 과정을 간소화합니다.

미리 구성된 Vagrantfile로, 새로운 개발자는 몇 가지 명령으로 개발 환경을 설정할 수 있습니다. 이 기능은 그들이 Windows, macOS 또는 Linux 배포판을 사용하더라도 적용됩니다.

vagrant init
Initiating a new Vagrant environment

3. 원하는 텍스트 편집기로 Vagrantfile을 열고, 다음 구성을 삽입한 후 파일을 저장하고 닫으십시오. 이 구성은 Ubuntu 20.04 LTS (Focal Fossa) 가상 머신 (VM)을 설정하고 NGINX를 설치합니다.

Vagrant는 프로젝트에 필요한 머신 유형을 정의하기 위해 선언적 구성 파일인 Vagrantfile을 사용합니다. 게다가, Vagrant는 시작하는 데 필요한 필수 상자 (Vagrant 환경의 패키지 형식)를 자동으로 다운로드할 수 있습니다.

Vagrant.configure("2") do |config|
  # Ubuntu 20.04 LTS (Focal Fossa)를 기본 상자로 사용합니다.
  config.vm.box = "ubuntu/focal64"
  
  # 패키지 목록을 자동으로 업데이트하고 패키지를 업그레이드하고 NGINX를 설치합니다.
  config.vm.provision "shell", inline: <<-SHELL
    echo "Updating package lists..."
    sudo apt-get update
    echo "Installing Nginx..."
    sudo apt-get install -y nginx
    echo "Ensuring Nginx is started..."
    sudo systemctl start nginx
  SHELL
end

4. 이제 다음 명령어인 vagrant up을 실행하여 VM을 부팅합니다.

Vagrant은 Ubuntu 상자를 다운로드하고(이미 다운로드되어 있지 않은 경우) 해당 상자를 기반으로 VM을 시작합니다.

vagrant up

5. 설정을 마친 후, 아래 vagrant 명령을 실행하여 SSH를 통해 VM의 명령 줄에 액세스합니다.

vagrant ssh
Connecting to the VM

6. 마지막으로, 아래 systemctl 명령을 실행하여 NGINX 서비스의 상태를 확인합니다.

sudo systemctl status nginx

모든 것이 예상대로 작동하면, NGINX가 활성화되어 실행 중임을 나타내는 출력이 표시됩니다.

축하합니다! 이제 Vagrant를 사용하여 개발 목적으로 Windows 기기에서 가상화된 Ubuntu Linux 서버를 운영 중입니다.

Verifying NGINX has been correctly installed

결론

이 튜토리얼을 통해 Windows에 Vagrant를 설치하고 개발 워크플로우를 크게 향상시키기 위한 재현 가능한 개발 환경을 만들었습니다.

독립적으로 작업하거나 협업하는 경우 모두, Vagrant는 프로젝트가 제어된 일관된 방식으로 개발되도록 인프라를 제공합니다. 이 인프라는 예측 가능하고 신뢰할 수 있는 결과를 이끌어 냅니다.

이제 Vagrant의 고급 기능을 탐색하세요, 특정 프로젝트 요구에 맞게 사용자 정의 상자를 생성하십시오! 또는 프로비저너를 활용하여 소프트웨어 설치와 구성을 자동화하십시오? 그리고 Docker와 같은 다른 도구와 통합하여 더 견고한 개발 환경을 구축하십시오?

가상화 소프트웨어의 복잡성을 추상화함으로써 Vagrant는 몇 가지 명령으로 일관된 이식 가능한 개발 환경을 설정할 수 있게 해줍니다. 지금 Vagrant의 모든 잠재력을 활용하세요!

Source:
https://adamtheautomator.com/vagrant-on-windows/