How to use this box with Vagrant:

Vagrant.configure("2") do |config|
  config.vm.box = "peru/windows-server-2019-datacenter-x64-eval"
  config.vm.box_version = "20200207.01"
end
vagrant init peru/windows-server-2019-datacenter-x64-eval \
  --box-version 20200207.01
vagrant up

This version was created 12 days ago.

Windows Server 2019 Datacenter Evaluation

Clean and minimal Windows Server 2019 Datacenter (x64) Evaluation base box for libvirt and VirtualBox Vagrant providers.


GitHub repository for bug reports or feature requests

Requirements

Requirements for Linux distributions running Vagrant

Unfortunately you can not use the Vagrant package provided by your Linux distribution (at least for CentOS / Fedora / Debian). These distributions doesn't support naively Ruby library for WinRM needed by Vagrant for talking to Windows. Luckily WinRM communicator including the Ruby WinRM library is part of official Vagrant package. You will also need the latest version of Vagrant Libvirt Plugin supporting libvirt channels.

Here are the steps for latest Fedora how to install Vagrant from the official web pages:

dnf remove vagrant

VAGRANT_LATEST_VERSION=$(curl -s https://checkpoint-api.hashicorp.com/v1/check/vagrant\
  | jq -r -M '.current_version')
dnf install https://releases.hashicorp.com/vagrant//vagrant__x86_64.rpm

# virtualbox
# Details here: https://rpmfusion.org/Howto/VirtualBox

# libvirt
dnf install -y gcc libvirt-daemon-kvm qemu-kvm libvirt-devel make rdesktop
vagrant plugin install vagrant-libvirt

Getting started

Install and connect to the box:

mkdir windows-server-2019-datacenter-x64-eval
cd windows-server-2019-datacenter-x64-eval
vagrant init peru/windows-server-2019-datacenter-x64-eval
VAGRANT_DEFAULT_PROVIDER=libvirt vagrant up
# or
VAGRANT_DEFAULT_PROVIDER=virtualbox vagrant up

Login Credentials

  • Username: Administrator, vagrant
  • Password: vagrant

VM Specifications

Drivers / Devices added for the VMs for specific providers.

Libvirt

  • Libvirt Provider
  • VirtIO dynamic Hard Disk (up to 50 GiB)
  • VirtIO Network Interface
  • QXL Video Card (SPICE display)
  • Channel Device (com.redhat.spice.0)

VirtualBox

  • SATA Disk

Configuration

Minimal installation

See the Autounattend file

  • UTC timezone
  • IEHarden disabled
  • Home Page set to about:blank
  • First Run Wizard disabled
  • Firewall allows Remote Desktop connections
  • AutoActivation skipped
  • DoNotOpenInitialConfigurationTasksAtLogon set to true
  • WinRM (SSL) enabled
  • New Network Window turned off
  • Administrator account enabled
  • EnableLUA
  • Windows image was finalized using sysprep: unattended.xml

Additional Drivers installed for libvirt boxes - VirtIO

Installed during installation:

  • NetKVM: VirtIO Network driver
  • qxldod: QXL graphics driver
  • viostor: VirtIO Block driver (VirtIO SCSI controller driver)

Installed components via Ansible playbook win-simple.yml:

  • vioscsi: Support for VirtIO SCSI pass-through controller
  • Balloon: VirtIO Memory Balloon driver
  • viorng: VirtIO RNG Device driver
  • vioser: VirtIO Serial Driver
  • vioinput: VirtIO Input Driver - support for new QEMU input devices virtio-keyboard-pci, virtio-mouse-pci, virtio-tablet-pci, virtio-input-host-pci
  • pvpanic: QEMU pvpanic device driver
  • qemu-ga: Qemu Guest Agent

Additional Drivers installed for VirtualBox boxes

  • VirtualBox Guest Additions

Thanks to

2 providers for this version.
  • virtualbox Hosted by Vagrant Cloud (5.92 GB)

  • libvirt Hosted by Vagrant Cloud (6 GB)