Vagrant Setup for macOS with Apple Chips

Hey guys!

In this short post, we will set up a simple environment to create VMs on macOS with Apple chips (M1/M2/M3 or newer) using Vagrant.

1. Introduction

What is Vagrant?

Vagrant is a tool that allows us to create and manage …


This content originally appeared on DEV Community and was authored by Felipe de Castro Curto

Hey guys!

In this short post, we will set up a simple environment to create VMs on macOS with Apple chips (M1/M2/M3 or newer) using Vagrant.

1. Introduction

What is Vagrant?

Vagrant is a tool that allows us to create and manage virtual machines easily and effectively. With it, we can create VMs from a configuration file called Vagrantfile, enabling us to share machine configurations easier, maintaining the consistency in our environments. This software has its main virtualization providers under the hood, such as VirtualBox, VMware, QEMU, Parallels, Docker, Hyper-V and others.

Main Features

  • Consistent and reproducible environments: Through the Vagrantfile configuration file, we can use the same environment for all developers involved in a project, for example.

  • Reduced manual work and errors: Since the environment configurations are done through code, the manual work required to create multiple VMs is drastically reduced, it also minimize the margin for error.

2. Preparing the environment

Requirements

  • OS: macOS 11.0 (Big Sur), but it is recommended to use the most recent version of macOS (such as Monterey 12.0 or Ventura 13.0) for better compatibility and performance.

  • Processor: Apple M1/M2/M3 or newer...

  • Package Manager: Homebrew

Installation

First, let's install Homebrew, if you don't have it yet.

# Install Homebrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

Now, let's install QEMU, an open-source virtual machine emulator and virtualizer. You may choose another one if you prefer, like VMware, VirtualBox...

# Install QEMU
brew install qemu

Lastly, let's download Vagrant itself and the plugin for QEMU.

# Install Vagrant
brew tap hashicorp/tap
brew install hashicorp/tap/hashicorp-vagrant

# Install Vagrant plugin for QEMU
vagrant plugin install vagrant-qemu

3. VM Configuration (arm64)

Create a folder to store the Vagrant configuration file.

# Create a directory
mkdir linux-machine && cd linux-machine

Inside the created directory, build the machine configuration file.

# Generate a Vagrantfile
touch Vagrantfile

Using a text editor of choice (nano, vim, VSCode...), add the following code:

Vagrant.configure("2") do |config|
  config.vm.box = "perk/ubuntu-2204-arm64"
  config.vm.provider "qemu" do |qemu|
    # set the port of your preference
    qemu.ssh_port = "9999" 
  end
end

NOTE: The image used was perk/ubuntu-2204-arm64. But you can use any other that is compatible with the QEMU provider and the arm64 architecture. You can find more images on Vagrant Cloud. For example, the image generic/debian12 also offers compatibility with QEMU and arm64.

4. Launch

Download the image and launch the VM.

# Download the image and launch
# This may take a while
vagrant up --provider=qemu

Access the machine’s command line via SSH.

# Log into the VM
vagrant ssh

Well done, your new environment is all set up. :)

Here are some Vagrant commands to help you out:

bash
# See the machine status
vagrant status

# See downloaded images (box)
vagrant box list

# Remove images (box)
vagrant box remove box-name


This content originally appeared on DEV Community and was authored by Felipe de Castro Curto


Print Share Comment Cite Upload Translate Updates
APA

Felipe de Castro Curto | Sciencx (2024-09-01T22:02:06+00:00) Vagrant Setup for macOS with Apple Chips. Retrieved from https://www.scien.cx/2024/09/01/vagrant-setup-for-macos-with-apple-chips/

MLA
" » Vagrant Setup for macOS with Apple Chips." Felipe de Castro Curto | Sciencx - Sunday September 1, 2024, https://www.scien.cx/2024/09/01/vagrant-setup-for-macos-with-apple-chips/
HARVARD
Felipe de Castro Curto | Sciencx Sunday September 1, 2024 » Vagrant Setup for macOS with Apple Chips., viewed ,<https://www.scien.cx/2024/09/01/vagrant-setup-for-macos-with-apple-chips/>
VANCOUVER
Felipe de Castro Curto | Sciencx - » Vagrant Setup for macOS with Apple Chips. [Internet]. [Accessed ]. Available from: https://www.scien.cx/2024/09/01/vagrant-setup-for-macos-with-apple-chips/
CHICAGO
" » Vagrant Setup for macOS with Apple Chips." Felipe de Castro Curto | Sciencx - Accessed . https://www.scien.cx/2024/09/01/vagrant-setup-for-macos-with-apple-chips/
IEEE
" » Vagrant Setup for macOS with Apple Chips." Felipe de Castro Curto | Sciencx [Online]. Available: https://www.scien.cx/2024/09/01/vagrant-setup-for-macos-with-apple-chips/. [Accessed: ]
rf:citation
» Vagrant Setup for macOS with Apple Chips | Felipe de Castro Curto | Sciencx | https://www.scien.cx/2024/09/01/vagrant-setup-for-macos-with-apple-chips/ |

Please log in to upload a file.




There are no updates yet.
Click the Upload button above to add an update.

You must be logged in to translate posts. Please log in or register.