M1 MAC에서 VAGRANT 활용하기

2024. 11. 25. 01:21·개발
반응형

 

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

반응형
'개발' 카테고리의 다른 글
  • 전시 도메인 캐싱에 대한 잡다한 생각들
  • 2개의 멀티 트랜잭션 안정적으로 다루기
  • 컴퓨터가 소숫점 계산을 잘 하지 못하는 이유
  • Tomcat Connector
Debin
Debin
공부 기록을 남기며 게시글 리팩토링을 진행하는 블로그입니다.
  • Debin
    리팩토링하는 블로그
    Debin
  • 전체
    오늘
    어제
    • 분류 전체보기
      • DB
        • DB 기초
        • MySQL
        • SQL 튜닝
      • OS
      • Network
      • Git
      • 디지털콘텐츠기획
      • 소프트웨어공학
      • 코딩테스트
        • 프로그래머스
        • 백준
        • 인프런
      • 공부 일지
      • 독서
        • 클린코드
        • 일상 속 사물이 알려주는 웹 API 디자인
        • 토비의 스프링
        • 객체지향의 사실과 오해
        • 자바 잘 읽는 법
      • 기록 및 회고
      • Cloud
        • AWS
      • 개발
        • Java
        • Spring Core
        • Spring MVC
        • Spring DB
        • Spring Boot
        • Spring Security
        • Spring Batch
        • JPA
        • Test
        • Android
      • 대외활동
        • UMC SERVER
        • 카엔프 SW 아카데미
      • 프로젝트
      • Docker
      • Gradle
      • ELK
      • 실무 이야기
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • 깃허브
  • 공지사항

    • 본인 깃허브입니다!
  • 인기 글

  • 태그

    docker
    객체지향
    인덱스
    spring
    test
    redis
    자바
    토비의 스프링
    AWS
    spring mvc
    innodb
    도커
    SQL
    리눅스
    스프링 부트
    객체
    데이터베이스
    Java
    프록시
    AOP
    코딩 #개발자 #노마드북클럽 #노개북
    스프링
    컨테이너
    JPA
    spring boot
    container
    운영체제
    트랜잭션
    mysql
    ORM
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.6
Debin
M1 MAC에서 VAGRANT 활용하기
상단으로

티스토리툴바