← 소프트웨어 자료실

Vagrant

Vagrant는 가상머신 기반 개발 환경을 설정 파일과 명령어로 생성·관리하는 HashiCorp의 도구입니다. macOS·Windows·Linux에서 사용하며, 팀이 같은 운영체제와 의존성 구성을 재현하거나 서버 설정을 반복 시험할 때 적합합니다.

어떤 작업에 사용하는가

Vagrant는 개발자와 운영 담당자가 재현 가능한 실험 환경을 만드는 명령줄 도구입니다. 실제 가상머신 실행은 VirtualBox나 VMware 같은 프로바이더가 담당하고, Vagrant는 생성과 설정 절차를 통일합니다. 프로젝트별로 라이브러리와 서버 구성을 격리하거나 신규 팀원의 환경 준비 절차를 표준화할 때 유용합니다.

Vagrantfile과 설치 스크립트를 함께 관리하면 수동 설치 순서를 전달하는 대신 환경 구성 자체를 공유할 수 있습니다.

지원 운영체제와 macOS 준비 사항

2026년 10월 24일 확인한 공식 설치 페이지는 2.4.9를 제공하며, 문서도 이를 최신 버전으로 표시합니다. 등록 정보에는 macOS만 있지만 공식 배포 대상에는 Windows와 Linux도 포함됩니다. macOS 설치 파일은 Intel용 AMD64와 Apple Silicon용 ARM64로 구분됩니다.

Vagrant 설치 파일뿐 아니라 가상화 프로그램과 box도 CPU 구조에 맞아야 합니다. ARM64용 Vagrant가 있다는 사실만으로 모든 기존 x86 가상머신 이미지를 실행할 수 있는 것은 아닙니다.

설치와 첫 작업 순서

먼저 Mac의 CPU 종류에 맞는 공식 설치 패키지와 사용할 가상화 프로그램을 준비합니다. 설치 뒤 터미널에서 vagrant --version으로 명령 인식을 확인합니다. 새 프로젝트 폴더에서 vagrant init과 선택한 box 이름을 사용해 Vagrantfile을 생성하고, box의 프로바이더·아키텍처·버전을 확인합니다.

vagrant up으로 환경을 만들고 vagrant ssh로 접속해 게스트 운영체제를 확인합니다. 작업 종료에는 vagrant halt를 사용합니다. vagrant destroy는 가상머신과 내부 데이터를 삭제하므로 필요한 결과물을 먼저 보관해야 합니다.

실무 예시: 웹 개발 환경 공유

예를 들어 Linux 기반 웹 서비스를 Mac에서 개발한다면, 팀이 정한 Linux box에 웹 서버와 실행 환경을 설치하는 셸 스크립트를 연결할 수 있습니다. 소스 폴더를 공유하고 게스트의 웹 포트를 호스트 포트로 전달하면 Mac의 편집기와 브라우저로 작업하면서 실행은 게스트에서 수행할 수 있습니다.

데이터베이스를 별도 가상머신으로 정의하면 서버 간 연결 설정도 시험할 수 있습니다. 같은 구성을 재현하려면 box 버전뿐 아니라 설치 패키지와 스크립트의 변경도 함께 관리하는 편이 좋습니다.

무료 사용과 라이선스 제약

Vagrant 본체는 일반적인 개발 및 조직 내부 용도로 별도 사용료 없이 이용할 수 있지만, 현행 소스 라이선스는 Business Source License 1.1입니다. 공개된 소스라는 이유로 모든 재판매·서비스 제공이 무제한 허용되는 것은 아닙니다. 라이선스에는 경쟁 유료 제품을 위한 호스팅·내장 제공 제한이 명시되어 있습니다.

가상화 프로그램, 외부 box, 클라우드 자원과 레지스트리 서비스의 조건은 본체와 별개입니다. 전체 구성이 항상 무료라고 가정하지 말고 선택한 구성요소별 조건을 확인해야 합니다.

문제가 생겼을 때 확인할 순서

명령을 찾지 못하면 설치 여부와 PATH를 확인하고 터미널이나 로그인 세션을 다시 시작합니다. 부팅이 실패하면 가상화 프로그램의 정상 실행 여부, 지정한 프로바이더, box의 CPU 구조와 호환성을 순서대로 살펴봅니다. 공식 설치 문서는 다른 하이퍼바이저와의 충돌도 안내합니다.

게스트는 실행되지만 웹 화면이 열리지 않으면 서버 프로세스, 포트 전달 설정, 호스트 포트 중복을 확인합니다. 파일 변경이 반영되지 않으면 공유 폴더 경로와 마운트 상태를 점검합니다. 공식 입문 문서의 Apple Silicon 관련 VirtualBox 주의 사항도 해당 환경에서 검토할 항목입니다.

다른 도구와 선택 기준 및 유지 상태

운영체제 전체와 시스템 설정을 포함한 환경을 반복 생성해야 한다면 Vagrant를 검토할 만합니다. 애플리케이션을 컨테이너 단위로 구성하고 빠르게 시작·종료하는 작업이 중심이라면 Docker 방식이 더 적합할 수 있습니다. Vagrant에도 Docker 프로바이더가 있어 두 도구를 함께 사용할 수 있습니다.

확인한 공식 페이지에서는 제품 지원 종료 공지를 찾지 못했고 설치 파일과 문서가 제공되고 있습니다. 다만 오래된 RubyGem 설치 방식은 공식적으로 지원하지 않으므로 과거 설치 안내를 그대로 따르지 않아야 합니다.

공식 안내

주요 기능

  • Vagrantfile에 기본 이미지인 box와 가상머신 설정을 기록해 개발 환경을 공유합니다.
  • vagrant up, ssh, halt, destroy 명령으로 환경 생성·접속·종료·삭제를 관리합니다.
  • 셸 스크립트 등 프로비저닝 도구로 패키지 설치와 서버 설정을 자동화합니다.
  • 공유 폴더와 포트 전달로 호스트의 소스 파일 및 브라우저를 게스트 환경과 연결합니다.
  • 한 프로젝트에 여러 가상머신을 정의해 서비스가 분리된 구성을 시험합니다.
광고

관련 프로그램

Proxyman

proxyman.com

Proxyman은 앱과 서버 사이의 HTTP·HTTPS 요청과 응답을 수집하고, 내용을 검사하거나 시험용 응답으로 바꾸는 네트워크 디버깅 프록시다. macOS에서 웹·모바일 앱의 API 오류를 추적하는 개발자와 QA 담당자에게 적합하다.

기타macOS

OpenCode

opencode.ai

OpenCode는 프로젝트 코드를 읽고 설명·수정 작업을 돕는 오픈소스 AI 코딩 에이전트입니다. 터미널, 데스크톱 앱, IDE 확장으로 이용하며 여러 모델 제공자와 로컬 모델을 연결할 수 있습니다. macOS는 Apple Silicon과 Intel용 데스크톱 배포를 모두 제공합니다.

기타macOS

Maccy

maccy.app

Clipboard manager

기타macOS

mitmproxy

mitmproxy.org

mitmproxy는 HTTP·HTTPS 통신을 가로채 요청과 응답을 살펴보고, 수정·저장·재생하는 무료 오픈소스 프록시입니다. macOS뿐 아니라 Windows와 Linux도 지원합니다. 터미널 인터페이스인 mitmproxy, 브라우저 GUI인 mitmweb, 자동화에 쓰는 mitmdump를 제공하며, 앱과 서버 사이의 API 오류를 분석하거나 테스트 응답을 만드는 개발자·QA 담당자에게 적합합니다.

기타macOS

AWS Corretto JDK

corretto.aws

AWS Corretto JDK의 공식 명칭은 Amazon Corretto이며, Amazon이 배포하는 무료 OpenJDK 개발·실행 환경이다. Java SE 호환성 검증을 거쳤으며 macOS, Linux, Windows에서 Java 프로그램을 개발하고 실행할 수 있다. 이 설명은 제공된 버전에 해당하는 Corretto 21 LTS와 macOS 사용을 중심으로 다룬다.

기타macOS

OpenVPN Connect client

openvpn.net

OpenVPN Connect는 Mac에서 OpenVPN 방식의 VPN 서버에 접속하는 공식 클라이언트다. Access Server와 CloudConnexa뿐 아니라 OpenVPN Community Edition 기반 서버에도 사용할 수 있다. 회사·기관이 제공한 연결 프로필로 내부 업무망에 접속하는 용도이며, 앱 설치만으로 VPN 서버나 이용 계정이 제공되지는 않는다.

기타macOS