// Module included in the following assemblies:
//
// * virt/virtual_machines/creating_vm/virt-creating-vms-from-templates.adoc

:_mod-docs-content-type: PROCEDURE
[id="virt-creating-vm-from-template_{context}"]
= Creating a VM from a template

[role="_abstract"]
You can create a virtual machine (VM) from a template with an available boot source by using the {product-title} web console. You can customize template or VM parameters, such as data sources, Cloud-init, or SSH keys, before you start the VM.

You can choose between two views in the web console to create the VM:

* A virtualization-focused view, which provides a concise list of virtualization-related options at the top of the view
* A general view, which provides access to the various web console options, including *Virtualization*

.Procedure

. From the {product-title} web console, choose your view:
** For a virtualization-focused view, select *Administrator* -> *Virtualization* -> *Catalog*.
+
** For a general view, navigate to *Virtualization* -> *Catalog*.
. Click the *Template catalog* tab.
. Click the *Boot source available* checkbox to filter templates with boot sources. The catalog displays the default templates.

. Heterogeneous clusters only: To filter the search results to show templates associated with a particular architecture, click *Architecture Type* .

. Click *All templates* to view the available templates for your filters.
** To focus on particular templates, enter the keyword in the `Filter by keyword` field.
** Choose a template project from the *All projects* dropdown menu, or view all projects.
. Click a template tile to view its details.
** Optional: If you are using a Windows template, you can mount a Windows driver disk by selecting the *Mount Windows drivers disk* checkbox.
** If you do not need to customize the template or VM parameters, click *Quick create VirtualMachine* to create a VM from the template.
+
** If you need to customize the template or VM parameters, do the following:

.. Click *Customize VirtualMachine*. The *Customize and create VirtualMachine* page displays the *Overview*, *YAML*, *Scheduling*, *Environment*, *Network interfaces*, *Disks*, *Scripts*, and *Metadata* tabs.
.. Click the *Scripts* tab to edit the parameters that must be set before the VM boots, such as `Cloud-init`, `SSH key`, or `Sysprep` (Windows VM only).
.. Optional: Click the *Start this virtualmachine after creation (Always)* checkbox.
.. Click *Create VirtualMachine*.
+
The *VirtualMachine details* page displays the provisioning status.

