Table Of Contents


User Guide

First time using the AWS CLI? See the User Guide for help getting started.

Note: You are viewing the documentation for an older major version of the AWS CLI (version 1).

AWS CLI version 2, the latest major version of AWS CLI, is now stable and recommended for general use. To view this page for the AWS CLI version 2, click here. For more information see the AWS CLI version 2 installation instructions and migration guide.

[ aws . lightsail ]



Creates an AWS CloudFormation stack, which creates a new Amazon EC2 instance from an exported Amazon Lightsail snapshot. This operation results in a CloudFormation stack record that can be used to track the AWS CloudFormation stack created. Use the get cloud formation stack records operation to get a list of the CloudFormation stacks created.


Wait until after your new Amazon EC2 instance is created before running the create cloud formation stack operation again with the same export snapshot record.

See also: AWS API Documentation

See 'aws help' for descriptions of global parameters.


--instances <value>
[--cli-input-json <value>]
[--generate-cli-skeleton <value>]


--instances (list)

An array of parameters that will be used to create the new Amazon EC2 instance. You can only pass one instance entry at a time in this array. You will get an invalid parameter error if you pass more than one instance entry in this array.


Describes the Amazon Elastic Compute Cloud instance and related resources to be created using the create cloud formation stack operation.

sourceName -> (string)

The name of the export snapshot record, which contains the exported Lightsail instance snapshot that will be used as the source of the new Amazon EC2 instance.

Use the get export snapshot records operation to get a list of export snapshot records that you can use to create a CloudFormation stack.

instanceType -> (string)

The instance type (e.g., t2.micro ) to use for the new Amazon EC2 instance.

portInfoSource -> (string)

The port configuration to use for the new Amazon EC2 instance.

The following configuration options are available:

  • DEFAULT - Use the default firewall settings from the Lightsail instance blueprint.
  • INSTANCE - Use the configured firewall settings from the source Lightsail instance.
  • NONE - Use the default Amazon EC2 security group.
  • CLOSED - All ports closed.


If you configured lightsail-connect as a cidrListAliases on your instance, or if you chose to allow the Lightsail browser-based SSH or RDP clients to connect to your instance, that configuration is not carried over to your new Amazon EC2 instance.

userData -> (string)

A launch script you can create that configures a server with additional user data. For example, you might want to run apt-get -y update .


Depending on the machine image you choose, the command to get software on your instance varies. Amazon Linux and CentOS use yum , Debian and Ubuntu use apt-get , and FreeBSD uses pkg .

availabilityZone -> (string)

The Availability Zone for the new Amazon EC2 instance.

Shorthand Syntax:

sourceName=string,instanceType=string,portInfoSource=string,userData=string,availabilityZone=string ...

JSON Syntax:

    "sourceName": "string",
    "instanceType": "string",
    "portInfoSource": "DEFAULT"|"INSTANCE"|"NONE"|"CLOSED",
    "userData": "string",
    "availabilityZone": "string"

--cli-input-json (string) Performs service operation based on the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton. If other arguments are provided on the command line, the CLI values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally.

--generate-cli-skeleton (string) Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input, prints a sample input JSON that can be used as an argument for --cli-input-json. If provided with the value output, it validates the command inputs and returns a sample output JSON for that command.

See 'aws help' for descriptions of global parameters.


operations -> (list)

An array of objects that describe the result of the action, such as the status of the request, the timestamp of the request, and the resources affected by the request.


Describes the API operation.

id -> (string)

The ID of the operation.

resourceName -> (string)

The resource name.

resourceType -> (string)

The resource type.

createdAt -> (timestamp)

The timestamp when the operation was initialized (e.g., 1479816991.349 ).

location -> (structure)

The AWS Region and Availability Zone.

availabilityZone -> (string)

The Availability Zone. Follows the format us-east-2a (case-sensitive).

regionName -> (string)

The AWS Region name.

isTerminal -> (boolean)

A Boolean value indicating whether the operation is terminal.

operationDetails -> (string)

Details about the operation (e.g., Debian-1GB-Ohio-1 ).

operationType -> (string)

The type of operation.

status -> (string)

The status of the operation.

statusChangedAt -> (timestamp)

The timestamp when the status was changed (e.g., 1479816991.349 ).

errorCode -> (string)

The error code.

errorDetails -> (string)

The error details.