Awesome Open Source
Awesome Open Source

Build Status Go Report Card License


The smart virtual machines manager

Table of Contents:

What is Vermin

Vermin is a smart, simple and powerful command line tool for Linux, Windows and macOS. It's designed for developers/testers and others working in IT who want a fresh VM environment with a single command. It uses VirtualBox to run the VM. Vermin will fetch images on your behalf.

You can look to Vermin as a modern CLI for Vagrant Boxes.

Vermin can be used when you need an easy way to obtain a Linux environment up and running in minutes.

Install Vermin

Vermin uses VirtualBox v6.0 or later as the underlying hypervisor to create and run Virtual Machines. So you need to download and install it first.

To install/update on macOS and Linux run:

/bin/bash -c "$(curl -fsSL"

To install/update on Windows (PowerShell) run:

# Should run as Administrator
iex ((New-Object System.Net.WebClient).DownloadString(''))


Create, control and connect to VirtualBox VM instances

  vermin [command]


You can use vermin by creating a VM from an image.

To list all images available:
$ vermin images

Then you can create a vm using:
$ vermin create <image>

Available Commands:
  commit      Commit a VM into a new Image
  completion  Generates shell completion scripts
  cp          Copy files/folders between a VM and the local filesystem or between two VMs
  create      Create a new VM
  exec        Run a command in a running VM
  gui         open the GUI for the VM
  help        Help about any command
  hypervisor  print the name of the detected hypervisor
  images      List remote and cached images
  ip          Show IP address for a running VM
  mount       Mount local filesystem inside the VM
  port        Forward port(s) from a VM to host
  ps          List VMs
  restart     Restart one or more VMs
  rm          Remove one or more VM
  rmi         Remove one or more Image
  ssh         ssh into a running VM
  start       Start one or more stopped VMs
  stop        Stop one or more running VMs
  tag         Add or remove tag to a VM
  update      Update configuration of a VM

  -h, --help      help for vermin
  -v, --version   version for vermin

Use "vermin [command] --help" for more information about a command.

You can start using Vermin after installation using:

$ vermin create <vagrant image name>

# example using ubuntu focal image
$ vermin create hashicorp/focal64

# also you can use rhel8 using:
$ vermin create generic/rhel8

You can use all vagrant images.

Vermin collects very simple usage data anonymously.

For more info on the usage options see Vermin documentations website.


Special thanks to Ahmed Samir for contributing the logo.

Stars Overtime

Stargazers over time



Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
go (15,165
golang (3,885
linux (2,517
virtual-machine (153
vagrant (152
virtualization (108
virtualbox (86
golang-tools (36