// Module included in the following assemblies: // // * virt/virtual_machines/creating_vms_rh/virt-creating-vms-from-cli.adoc :_mod-docs-content-type: PROCEDURE [id="virt-creating-vm-cli_{context}"] = Creating a VM from a VirtualMachine manifest You can create a virtual machine (VM) from a `VirtualMachine` manifest. .Procedure . Edit the `VirtualMachine` manifest for your VM. The following example configures a {op-system-base-full} VM: + [NOTE] ==== This example manifest does not configure VM authentication. ==== + .Example manifest for a {op-system-base} VM [source,yaml] ---- apiVersion: kubevirt.io/v1 kind: VirtualMachine metadata: name: rhel-9-minimal spec: dataVolumeTemplates: - metadata: name: rhel-9-minimal-volume spec: sourceRef: kind: DataSource name: rhel9 <1> namespace: openshift-virtualization-os-images <2> storage: {} instancetype: name: u1.medium <3> preference: name: rhel.9 <4> running: true template: spec: domain: devices: {} volumes: - dataVolume: name: rhel-9-minimal-volume name: rootdisk ---- <1> The `rhel9` golden image is used to install {op-system-base} 9 as the guest operating system. <2> Golden images are stored in the `openshift-virtualization-os-images` namespace. <3> The `u1.medium` instance type requests 1 vCPU and 4Gi memory for the VM. These resource values cannot be overridden within the VM. <4> The `rhel.9` preference specifies additional attributes that support the {op-system-base} 9 guest operating system. . Create a virtual machine by using the manifest file: + [source,terminal] ---- $ oc create -f .yaml ---- . Optional: Start the virtual machine: + [source,terminal] ---- $ virtctl start -n ----