개발

M1 MAC에서 VAGRANT 활용하기

Debin 2024. 11. 25.
반응형

 

Vagrant는 가상 머신 환경을 관리하고 자동화하는 도구로, 특히 로컬에서 개발 환경을 코드로 정의하고 프로비저닝하는 데 유용하다.

 

이번에는 Vagrant를 통해 로컬에서 VM을 다뤄보겠다.

먼저 아래와 같이 준비를 진행하자. m1에서 Virtual Box가 아직 베타버전이라 vmware를 활용했다.

 

brew tap hashicorp/tap
brew install hashicorp/tap/hashicorp-vagrant
brew install --cask vmware-fusion

 

이후 vagrant와 vmware를 연동하기 위한 플러그인을 설치하자.

vagrant plugin install vagrant-vmware-desktop

 

그런데 vmware와 vagrant 플러그인을 다운로드 받아도 다음과 같은 문제가 발생했다.

 

 


현재 2.4.2에서는 다음과 같은 에러가 발생해서, 다운그레이드를 하거나 환경변수를 설정해줘야된다고 한다.

.zshrc 파일에 다음과 같이 작성했다.

 

export VAGRANT_DISABLE_STRICT_DEPENDENCY_ENFORCEMENT=1

 

플러그인은 성공적으로 인스톨할 수 있었다.

 

이제 작업할 디렉토리를 만들어준다.

 

mkdir vagrant

 

초기화 명령어를 실행해 프로비저닝에 필요한 기본 파일을 생성하자.

 

vagrant init

 

Ubuntu 24를 다룰 예정이므로 적당한 Vagrant image를 찾았다.

그리고 Vagrantfile을 다음과 같이 작성한다.

 

Vagrant.configure("2") do |config|

  config.vm.box = "bento/ubuntu-24.04"

  config.vm.provider "vmware_desktop" do |vm|
    vm.gui = false
    vm.memory = "1024"
  end
end

 

그리고 아래와 같은 명령어를 입력한다.

아래 명령어는 Vagrantfile을 읽어 프로비저닝을 진행한다.

vagrant up

 

 

그런데 다음과 같은 에러가 발생했다.

vagrant-utility가 설치되지 않아서 발생한 에러이다.

 

 

 

그래서 아래에서 유틸리티를 직접 다운로드를 받았다.

 

https://developer.hashicorp.com/vagrant/install/vmware

 

Install | Vagrant | HashiCorp Developer

Explore Vagrant product documentation, tutorials, and examples.

developer.hashicorp.com

 

그리고 다시 vagrant up를 진행하니 정상적으로 진행이 되기 시작했다.

마무리가 되면 vmware 애플리케이션에 접속해서 확인해보면 된다.

 

 

정상적으로 vm이 만들어진걸 확인할 수 있다.

또한 아래 명령어를 사용하면 생성한 VM에 바로 접속할 수 있다.

 

vagrant ssh

 

이상으로 포스팅을 마칩니다. 감사합니다.

 

참고자료

 

https://devops-james.tistory.com/271

https://product.kyobobook.co.kr/detail/S000001834629

https://developer.hashicorp.com/vagrant/docs/providers/vmware/vagrant-vmware-utility

https://developer.hashicorp.com/vagrant/install/vmware

https://github.com/hashicorp/vagrant/issues/13527

반응형

댓글