Creating a Docker App (experimental)
POST /v2/apps/
Request
Route
POST /v2/apps
Body
Name |
Description |
Default |
Valid Values |
Example Values |
name
|
The name of the app.
|
|
|
|
memory
|
The amount of memory each instance should have. In megabytes.
|
|
|
|
instances
|
The number of instances of the app to run. To ensure optimal availability, ensure there are at least 2 instances.
|
|
|
|
disk_quota
|
The maximum amount of disk available to an instance of an app. In megabytes.
|
|
|
|
space_guid
|
The guid of the associated space.
|
|
|
- guid-17a695d9-6156-4532-9571-5ca14b30945f
|
stack_guid
|
The guid of the associated stack.
|
Uses the default system stack.
|
|
- guid-3c0bde91-e990-4a29-baff-a928f3c5fd3b
|
state
|
The current desired state of the app. One of STOPPED or STARTED.
|
STOPPED
|
|
|
detected_start_command
|
The command detected by the buildpack during staging.
|
|
|
|
command
|
The command to start an app after it is staged, maximum length: 4096 (e.g. 'rails s -p $PORT' or 'java com.org.Server $PORT').
|
|
|
|
buildpack
|
Buildpack to build the app. 3 options: a) Blank means autodetection; b) A Git Url pointing to a buildpack; c) Name of an installed buildpack.
|
|
|
- https://github.com/virtualstaticvoid/heroku-buildpack-r.git
- an_example_installed_buildpack
|
health_check_type
|
Type of health check to perform. 'none' is deprecated and an alias to 'process'.
|
port
|
|
|
health_check_timeout
|
Timeout for health checking of an staged app when starting up
|
|
|
|
diego
|
Use diego to stage and to run when available
|
false
|
|
|
enable_ssh
|
Enable SSHing into the app. Supported for Diego only.
|
false if SSH is disabled globally or on the space, true if enabled for both
|
|
|
docker_image
|
Name of the Docker image containing the app
|
|
|
- cloudfoundry/helloworld
- registry.example.com:5000/user/repository/tag
|
docker_credentials_json
|
Docker credentials for pulling docker image.
|
{}
|
|
- #<RspecApiDocumentation::Views::HtmlExample:0x0000000a6f5e78>
|
environment_json
|
Key/value pairs of all the environment variables to run in your app. Does not include any system or service variables.
|
|
|
|
production
|
Deprecated.
|
true
|
|
|
console
|
Open the console port for the app (at $CONSOLE_PORT).
|
false
|
|
|
debug
|
Open the debug port for the app (at $DEBUG_PORT).
|
false
|
|
|
staging_failed_reason
|
Reason for application staging failures
|
|
|
|
staging_failed_description
|
Detailed description for the staging_failed_reason
|
|
|
|
ports
|
Ports on which application may listen. Overwrites previously configured ports. Ports must be in range 1024-65535. Supported for Diego only.
|
|
|
|
{
"name": "docker_app",
"space_guid": "ede3af66-5c51-47d4-99d4-49762a8296d6",
"docker_image": "cloudfoundry/hello",
"diego": true
}
Headers
cURL
curl "https://api.[your-domain.com]/v2/apps" -d '{
"name": "docker_app",
"space_guid": "ede3af66-5c51-47d4-99d4-49762a8296d6",
"docker_image": "cloudfoundry/hello",
"diego": true
}' -X POST \
-H "Authorization: bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyX2lkIjoidWFhLWlkLTE3NSIsImVtYWlsIjoiZW1haWwtMTM2QHNvbWVkb21haW4uY29tIiwic2NvcGUiOlsiY2xvdWRfY29udHJvbGxlci5hZG1pbiJdLCJhdWQiOlsiY2xvdWRfY29udHJvbGxlciJdLCJleHAiOjE0NTg1OTk0MzV9.EYUinpzIYzj1HJA5QRLtZ9fGApAOrDpVaXqy1x449eM" \
-H "Host: example.org" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Cookie: "
Response
Status
201 Created
Body
{
"metadata": {
"guid": "ba82b03d-2897-4db0-b2c9-db30ad0284f5",
"url": "/v2/apps/ba82b03d-2897-4db0-b2c9-db30ad0284f5",
"created_at": "2016-03-14T22:30:35Z",
"updated_at": null
},
"entity": {
"name": "docker_app",
"production": false,
"space_guid": "ede3af66-5c51-47d4-99d4-49762a8296d6",
"stack_guid": "89087e16-7b52-4a28-9656-290416920f9d",
"buildpack": null,
"detected_buildpack": null,
"environment_json": {
},
"memory": 1024,
"instances": 1,
"disk_quota": 1024,
"state": "STOPPED",
"version": "d4cef03c-833c-4641-a68f-6dd33ee32f2b",
"command": null,
"console": false,
"debug": null,
"staging_task_id": null,
"package_state": "PENDING",
"health_check_type": "port",
"health_check_timeout": null,
"staging_failed_reason": null,
"staging_failed_description": null,
"diego": true,
"docker_image": "cloudfoundry/hello:latest",
"package_updated_at": "2016-03-14T22:30:35Z",
"detected_start_command": "",
"enable_ssh": true,
"docker_credentials_json": {
"redacted_message": "[PRIVATE DATA HIDDEN]"
},
"ports": [
8080
],
"space_url": "/v2/spaces/ede3af66-5c51-47d4-99d4-49762a8296d6",
"stack_url": "/v2/stacks/89087e16-7b52-4a28-9656-290416920f9d",
"routes_url": "/v2/apps/ba82b03d-2897-4db0-b2c9-db30ad0284f5/routes",
"events_url": "/v2/apps/ba82b03d-2897-4db0-b2c9-db30ad0284f5/events",
"service_bindings_url": "/v2/apps/ba82b03d-2897-4db0-b2c9-db30ad0284f5/service_bindings",
"route_mappings_url": "/v2/apps/ba82b03d-2897-4db0-b2c9-db30ad0284f5/route_mappings"
}
}
Headers
Audit Records Created By The Request
Audit Record: audit.app.create
Attribute Name |
Value |
id
|
190
|
guid
|
9de47050-9af2-457b-b755-70fb14b251eb
|
created_at
|
2016-03-14 22:30:35 UTC
|
updated_at
|
|
timestamp
|
2016-03-14 22:30:35 UTC
|
type
|
audit.app.create
|
actor
|
uaa-id-175
|
actor_type
|
user
|
actee
|
ba82b03d-2897-4db0-b2c9-db30ad0284f5
|
actee_type
|
app
|
metadata
|
{
"request": {
"name": "docker_app",
"space_guid": "ede3af66-5c51-47d4-99d4-49762a8296d6",
"docker_image": "cloudfoundry/hello",
"diego": true,
"console": false,
"docker_credentials_json": "PRIVATE DATA HIDDEN",
"environment_json": "PRIVATE DATA HIDDEN",
"health_check_type": "port",
"instances": 1,
"production": false,
"state": "STOPPED"
}
}
|
space_id
|
|
organization_guid
|
6b2fdedb-691e-484e-bdaf-6425ee6a76e9
|
space_guid
|
ede3af66-5c51-47d4-99d4-49762a8296d6
|
actor_name
|
email-136@somedomain.com
|
actee_name
|
docker_app
|