hello

Vagrant 소개 및 사용법

Vagrant는 개발 환경을 코드로 관리할 수 있도록 도와주는 오픈 소스 도구

Share

📌 Vagrant란 무엇인가요?

Vagrant는 개발 환경을 코드로 관리할 수 있도록 도와주는 오픈 소스 도구입니다. 주로 가상 머신(VM)을 쉽게 생성하고 관리할 수 있게 해주며, 개발 환경의 표준화에 매우 유용합니다.

Vagrant는 다음과 같은 상황에서 활용됩니다:

  • 팀원 간 동일한 개발 환경 구성
  • 테스트용 임시 서버 실행
  • 로컬에서의 인프라 테스트 자동화
⚙️ 기본적으로 Vagrant는 VirtualBox와 함께 사용되며, Docker, VMware 등도 백엔드로 사용할 수 있습니다.

🔗 관련 링크


👨‍💻 누가 만들었나요?

Vagrant는 2010년, 당시 대학생이었던 Mitchell Hashimoto에 의해 처음 개발되었습니다.

  • Mitchell Hashimoto는 나중에 HashiCorp라는 회사를 공동 창업하게 됩니다.
  • HashiCorp는 Vagrant 외에도 Terraform, Consul, Vault, Packer 등 DevOps 분야의 강력한 도구들을 개발한 회사입니다.
🎓 참고: Hashimoto는 개인 프로젝트로 Vagrant를 개발했으며, 커뮤니티의 큰 반응을 얻은 이후 이를 기반으로 HashiCorp를 설립했습니다.

📜 라이선스는 어떤가요?

Vagrant는 MIT 라이선스로 배포됩니다.

✅ MIT 라이선스란?

  • 누구나 자유롭게 소스 코드를 복사, 수정, 배포할 수 있습니다.
  • 상업적 사용도 가능합니다.
  • 단, **원 저작자에 대한 표시(MIT license notice)**는 유지해야 합니다.
✔️ MIT 라이선스는 오픈소스 라이선스 중에서도 가장 관대한 형태입니다.

🧱 Vagrant의 주요 특징

기능 설명
환경 구성 자동화 Vagrantfile을 통해 VM 설정을 코드로 관리
다양한 Provider 지원 VirtualBox, Docker, Hyper-V 등 다양한 백엔드 지원
플랫폼 간 호환성 Windows, macOS, Linux에서 모두 사용 가능
프로비저닝 지원 Shell script, Ansible, Chef 등을 통한 환경 설정 자동화

💻 설치 방법 (2024년 기준 최신)

1. Vagrant 설치

아래 링크에서 본인의 운영체제에 맞는 Vagrant를 다운로드하여 설치합니다:

🔗 https://www.vagrantup.com/downloads

2. VirtualBox 설치 (기본 Provider)

VirtualBox가 없다면 함께 설치해주세요:

🔗 https://www.virtualbox.org/wiki/Downloads


📂 Vagrant 기본 사용법

1. 프로젝트 폴더 생성

mkdir my-vagrant && cd my-vagrant

2. Vagrantfile 초기화

vagrant init ubuntu/xenial64
  • 초기화 시 Vagrantfile이 생성됩니다.

3. Vagrantfile 예시

Vagrant.configure("2") do |config|
  config.vm.box = "hashicorp/bionic64"
  config.vm.network "forwarded_port", guest: 80, host: 8080
  config.vm.provider "virtualbox" do |vb|
    vb.memory = "1024"
  end
end
위 설정은 Ubuntu VM을 생성하고, 포트 80을 로컬 포트 8080으로 포워딩하며, 메모리 1GB로 설정합니다.

4. 가상 머신 실행

vagrant up
VM이 다운로드되고 자동으로 부팅됩니다.

5. SSH 접속

vagrant ssh
생성된 VM에 직접 접속할 수 있습니다.

6. 가상 머신 중지

vagrant halt

7. 가상 머신 삭제

vagrant destroy

📦 Vagrant Box란?

Vagrant에서 사용하는 운영 체제 이미지를 Box라고 합니다. Box는 다음 명령어로 검색하거나 추가할 수 있습니다.

Box 검색

vagrant cloud search ubuntu

Box 추가

vagrant box add ubuntu/xenial64

🛠️ 프로비저닝 예시 (Shell Script 사용)

Vagrant.configure("2") do |config|
  config.vm.box = "ubuntu/focal64"
  config.vm.provision "shell", inline: <<-SHELL
    sudo apt update
    sudo apt install -y nginx
  SHELL
end
위 설정은 VM 생성 시 자동으로 Nginx를 설치합니다.

📁 관련 명령어 요약

명령어 설명
vagrant init Vagrantfile 생성
vagrant up 가상 머신 실행
vagrant ssh SSH 접속
vagrant halt 가상 머신 중지
vagrant destroy 가상 머신 삭제
vagrant status 현재 상태 확인
vagrant box list 설치된 Box 목록 확인

Read more

AI 에이전트 시대의 코드 호스팅: Cursor ‘Origin’은 왜 등장했나

AI 코딩 도구로 빠르게 성장한 Cursor가 이제 코드 에디터를 넘어 코드 호스팅 영역까지 확장하고 있습니다. 2026년 8월 17일 Cursor는 Origin이라는 새로운 코드 호스팅 서비스를 early beta로 공개했습니다. 쉽게 말하면 GitHub처럼 Git 저장소를 만들고, 코드를 올리고, Pull Request(PR)를 만들고 리뷰할 수 있는 서비스입니다. 그런데 단순히 "Cursor가 GitHub 비슷한

By JHL

코딩 에이전트에 1,000억 토큰을 써보니, 병목은 모델 밖에 있었다

Codex 화면에 집계된 누적 사용량은 약 866억 토큰이었다. Claude는 내가 확인할 수 있었던 로컬 머신의 집계값만 합쳐도 약 127억 토큰이었다. 다만 Claude는 여러 워크스테이션과 서버에서 사용했고, 중간에 사용량 데이터를 한 번 날려버리기도 했다. 누락된 머신과 기간을 감안하면 실제 사용량은 300억 토큰을 넘었을 가능성이 높다. 여기에 Ollama Cloud로 사용한 GLM, Qwen

By JHL

AI가 짜준 코드가 배포 속도를 높였다면, 이제는 '신뢰성 가드레일'을 세울 때입니다

최근 많은 팀이 AI 코딩 어시스턴트나 에이전트를 도입하면서 코드 생산 속도가 비약적으로 상승했습니다. 하지만 속도가 빨라졌다는 것은 그만큼 잠재적인 결함이 프로덕션 환경으로 유입되는 속도 또한 빨라졌음을 의미합니다. DevOps.com의 이번 글은 AI가 생성한 코드의 특성과 그로 인해 발생하는 새로운 유형의 리스크, 그리고 이를 제어하기 위한 '신뢰성 가드레일(Reliability Guardrails)

By JHL

LLM 시대, 프롬프트 엔지니어링보다 '도메인 전문성'이 더 강력한 무기인 이유

최근 AI 도구들이 비약적으로 발전하면서 '프롬프트 엔지니어링'이라는 기술적 기법에 많은 관심이 쏠렸습니다. 하지만 실제 현업에서 LLM을 극한으로 활용해 고도의 결과물을 만들어내는 사람들의 공통점은 정교한 프롬프트 템플릿을 쓰는 능력이 아니라, 해당 분야에 대한 깊은 '도메인 전문성'을 갖추고 있다는 점입니다. 많은 이들이 LLM이 지식의 격차를 줄여준다고

By JHL