Как в Vagrantfile настроить размер доступных виртуальной машине Vagrant / VirtualBox системных ресурсов

Шаг 1. Объём доступной оперативной памяти

По умолчанию виртуальная машина Vagrant / VirtualBox для Discourse настроена всего на 1 Гб оперативной памяти.
Производительность Discourse можно увеличить простым увеличением объёма доступной виртуальная машине оперативной памяти.
Объём оперативной памяти для виртуальной машины Vagrant / VirtualBox задаётся в файле Vagrantfile в корневой папке дистрибутива Discourse:

v.customize ["modifyvm", :id, "--memory", [ENV['DISCOURSE_VM_MEM'].to_i, 1024].max]

1024 — это размер оперативной памяти в мегабайтах, тот самый 1 Гб по умолчанию.
У меня на компьютере 11 Гб оперативной памяти, и поэтому я выделил для Vagrant / VirtualBox 5 Гб:

v.customize ["modifyvm", :id, "--memory", [ENV['DISCOURSE_VM_MEM'].to_i, 5120].max]

Шаг 2. Количество доступных ядер процессора

Количество доступных виртуальной машине ядер процессора настраивается в Vagrantfile параметром cpu_count:

# Who has a single core cpu these days anyways?
cpu_count = 2

# Determine the available cores in host system.
# This mostly helps on linux, but it couldn't hurt on MacOSX.
if RUBY_PLATFORM =~ /linux/
  cpu_count = `nproc`.to_i
elsif RUBY_PLATFORM =~ /darwin/
  cpu_count = `sysctl -n hw.ncpu`.to_i
end

# Assign additional cores to the guest OS.
v.customize ["modifyvm", :id, "--cpus", cpu_count]

Как можно увидеть из этого кода, при настройках по умолчанию Discourse под Windows будет использовать 2 ядра процессора.
Обратите внимание, что под Linux и MacOS этот скрипт сам определяет количество имеющихся на компьютере ядер процессора и задействует их все, а вот для Windows он так не делает.
Поэтому настройте параметр cpu_count вручную. У меня на компьютере 4 ядра процессора, поэтому я написал так:

cpu_count = 4

Шаг 3.

Если виртуальная машина уже запущена, то настройки Vagrantfile применятся только после её перезагрузки:

vagrant reload