doctl apps create

Go to Navigation


doctl apps create [flags]




Create an app with the given app spec.


The following example creates an app in a project named example-project using an app spec located in a directory called /src/your-app.yaml. Additionally, the command returns the new app’s ID, ingress information, and creation date:

doctl apps create --spec src/your-app.yaml --format ID,DefaultIngress,Created


Option Description
--format Columns for output in a comma-separated list. Possible values: ID, Spec.Name, DefaultIngress, ActiveDeployment.ID, InProgressDeployment.ID, Created, Updated.
--help , -h Help for this command
--no-header Return raw data with no headers
Default: false
--project-id The ID of the project to assign the created app and resources to. If not provided, the default project will be used.
--spec Path to an app spec in JSON or YAML format. Set to “-” to read from stdin. (required)
--upsert Boolean that specifies whether the app should be updated if it already exists
Default: false
--wait Boolean that specifies whether to wait for an app to complete before returning control to the terminal
Default: false
Command Description
doctl apps Displays commands for working with apps

Global Flags

Option Description
--access-token, -t API V2 access token
--api-url, -u Override default API endpoint
--config, -c Specify a custom config file
  • macOS: ${HOME}/Library/Application Support/doctl/config.yaml
  • Linux: ${XDG_CONFIG_HOME}/doctl/config.yaml
  • Windows: %APPDATA%\doctl\config.yaml
--context Specify a custom authentication context name
--http-retry-max Set maximum number of retries for requests that fail with a 429 or 500-level error
Default: 5
--http-retry-wait-max Set the minimum number of seconds to wait before retrying a failed request
Default: 30
--http-retry-wait-min Set the maximum number of seconds to wait before retrying a failed request
Default: 1
--interactive Enable interactive behavior. Defaults to true if the terminal supports it (default false)
Default: false
--output, -o Desired output format [text|json]
Default: text
--trace Show a log of network activity while performing a command
Default: false
--verbose, -v Enable verbose output
Default: false