create

limactl create

Create an instance of Lima

limactl create FILE.yaml|URL [flags]

Examples


  To create an instance "default" from the default Ubuntu template:
  $ limactl create

  To create an instance "default" from a template "docker":
  $ limactl create --name=default template://docker

  To create an instance "default" with modified parameters:
  $ limactl create --cpus=2 --memory=2

  To create an instance "default" with yq expressions:
  $ limactl create --set='.cpus = 2 | .memory = "2GiB"'

  To see the template list:
  $ limactl create --list-templates

  To create an instance "default" from a local file:
  $ limactl create --name=default /usr/local/share/lima/templates/fedora.yaml

  To create an instance "default" from a remote URL (use carefully, with a trustable source):
  $ limactl create --name=default https://raw.githubusercontent.com/lima-vm/lima/master/templates/alpine.yaml

  To create an instance "local" from a template passed to stdin (--name parameter is required):
  $ cat template.yaml | limactl create --name=local -

Options

      --arch string                Machine architecture (x86_64, aarch64, riscv64, armv7l, s390x, ppc64le)
      --containerd string          containerd mode (user, system, user+system, none)
      --cpus int                   Number of CPUs
      --disk float32               Disk size in GiB
      --dns ipSlice                Specify custom DNS (disable host resolver) (default [])
  -h, --help                       help for create
      --list-drivers               List available drivers and exit
      --list-templates             List available templates and exit
      --memory float32             Memory in GiB
      --mount strings              Directories to mount, suffix ':w' for writable (Do not specify directories that overlap with the existing mounts)
      --mount-inotify              Enable inotify for mounts
      --mount-none                 Remove all mounts
      --mount-only strings         Similar to --mount, but overrides the existing mounts
      --mount-type string          Mount type (reverse-sshfs, 9p, virtiofs)
      --mount-writable             Make all mounts writable
      --name string                Override the instance name
      --network strings            Additional networks, e.g., "vzNAT" or "lima:shared" to assign vmnet IP
      --plain                      Plain mode. Disables mounts, port forwarding, containerd, etc.
      --port-forward stringArray   Port forwards (host:guest), e.g., '8080:80' or '9090:9090,static=true' for static port-forwards
      --rosetta                    Enable Rosetta (for vz instances)
      --set string                 Modify the template inplace, using yq syntax
      --ssh-port uint16            SSH port (0 for random)
      --video                      Enable video output (has negative performance impact for QEMU)
      --vm-type string             Virtual machine type

Options inherited from parent commands

      --debug               Debug mode
      --log-format string   Set the logging format [text, json] (default "text")
      --log-level string    Set the logging level [trace, debug, info, warn, error]
      --tty                 Enable TUI interactions such as opening an editor. Defaults to true when stdout is a terminal. Set to false for automation.
  -y, --yes                 Alias of --tty=false

SEE ALSO

  • limactl - Lima: Linux virtual machines