1. A method comprising: receiving, by a processing device, a request to instantiate a virtual machine, wherein the request is associated with a software package to be installed on the virtual machine; generating a minimal installation of an operating system, wherein the minimal installation comprises a virtual machine disk image; modifying the virtual machine disk image, while the operating system is shut down, to allow remote access to the operating system for a known set of credentials; instantiating the virtual machine disk image of the minimal installation of the operating system; generating, by the processing device, a customized minimal installation of the operating system by installing the software package into the minimal installation of the operating system, while the operating system is running using the remote access for the known set of credentials; modifying the virtual machine disk image, while the operating system is shut down, to remove the remote access for the known set of credentials while preserving additional remote access added during the customized minimal installation of the operating system; and storing the virtual machine disk image comprising the customized minimal installation of the operating system.