<!doctype html> <html> <head> <meta charset="utf-8"> <meta content="IE=edge,chrome=1" http-equiv="X-UA-Compatible"> <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"> <title>API Documentation</title> <link href="../stylesheets/screen.css" rel="stylesheet" type="text/css" media="screen" /> <link href="../stylesheets/print.css" rel="stylesheet" type="text/css" media="print" /> <script type="text/javascript"> !function(){var analytics=window.analytics=window.analytics||[];if(!analytics.initialize)if(analytics.invoked)window.console&&console.error&&console.error("Segment snippet included twice.");else{analytics.invoked=!0;analytics.methods=["trackSubmit","trackClick","trackLink","trackForm","pageview","identify","reset","group","track","ready","alias","debug","page","once","off","on"];analytics.factory=function(t){return function(){var e=Array.prototype.slice.call(arguments);e.unshift(t);analytics.push(e);return analytics}};for(var t=0;t<analytics.methods.length;t++){var e=analytics.methods[t];analytics[e]=analytics.factory(e)}analytics.load=function(t){var e=document.createElement("script");e.type="text/javascript";e.async=!0;e.src=("https:"===document.location.protocol?"https://":"http://")+"cdn.segment.com/analytics.js/v1/"+t+"/analytics.min.js";var n=document.getElementsByTagName("script")[0];n.parentNode.insertBefore(e,n)};analytics.SNIPPET_VERSION="4.0.0"; analytics.load("IWj9D0UpZHZdZUZX9jl98PcpBFWBnBMy"); analytics.page(); }}(); </script> <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script> <script src="../javascripts/all_nosearch.js" type="text/javascript"></script> </head> <body class="includes includes_node"> <a href="#" id="nav-button"> <span> NAV <img src="../images/navbar.png" /> </span> </a> <div class="tocify-wrapper"> <img src="../images/logo.png" /> <div id="toc"> </div> </div> <div class="page-wrapper"> <div class="dark-box"></div> <div class="content"> <h1 id="nodes">Nodes</h1> <h2 id="node">Node</h2> <blockquote> <p>Example</p> </blockquote> <pre class="highlight json"><code><span class="p">{</span><span class="w"> </span><span class="nt">"availability_zone"</span><span class="p">:</span><span class="w"> </span><span class="s2">"/api/infra/v1/az/testing-provider/testing-region/testing-az/"</span><span class="p">,</span><span class="w"> </span><span class="nt">"cpu"</span><span class="p">:</span><span class="w"> </span><span class="mi">1</span><span class="p">,</span><span class="w"> </span><span class="nt">"current_num_containers"</span><span class="p">:</span><span class="w"> </span><span class="mi">4</span><span class="p">,</span><span class="w"> </span><span class="nt">"deployed_datetime"</span><span class="p">:</span><span class="w"> </span><span class="s2">"Tue, 16 Sep 2014 17:01:15 +0000"</span><span class="p">,</span><span class="w"> </span><span class="nt">"destroyed_datetime"</span><span class="p">:</span><span class="w"> </span><span class="kc">null</span><span class="p">,</span><span class="w"> </span><span class="nt">"disk"</span><span class="p">:</span><span class="w"> </span><span class="mi">60</span><span class="p">,</span><span class="w"> </span><span class="nt">"docker_execdriver"</span><span class="p">:</span><span class="w"> </span><span class="s2">"native-0.2"</span><span class="p">,</span><span class="w"> </span><span class="nt">"docker_graphdriver"</span><span class="p">:</span><span class="w"> </span><span class="s2">"aufs"</span><span class="p">,</span><span class="w"> </span><span class="nt">"docker_version"</span><span class="p">:</span><span class="w"> </span><span class="s2">"1.5.0"</span><span class="p">,</span><span class="w"> </span><span class="nt">"external_fqdn"</span><span class="p">:</span><span class="w"> </span><span class="s2">"fc1a5bb9-user.node.dockerapp.io"</span><span class="p">,</span><span class="w"> </span><span class="nt">"last_seen"</span><span class="p">:</span><span class="w"> </span><span class="s2">"Thu, 25 Sep 2014 13:14:44 +0000"</span><span class="p">,</span><span class="w"> </span><span class="nt">"memory"</span><span class="p">:</span><span class="w"> </span><span class="mi">1792</span><span class="p">,</span><span class="w"> </span><span class="nt">"nickname"</span><span class="p">:</span><span class="w"> </span><span class="s2">"fc1a5bb9-user.node.dockerapp.io"</span><span class="p">,</span><span class="w"> </span><span class="nt">"node_cluster"</span><span class="p">:</span><span class="w"> </span><span class="s2">"/api/infra/v1/user_namespace/nodecluster/d787a4b7-d525-4061-97a0-f423e8f1d229/"</span><span class="p">,</span><span class="w"> </span><span class="nt">"node_type"</span><span class="p">:</span><span class="w"> </span><span class="s2">"/api/infra/v1/user_namespace/nodetype/testing-provider/testing-type/"</span><span class="p">,</span><span class="w"> </span><span class="nt">"public_ip"</span><span class="p">:</span><span class="w"> </span><span class="s2">"10.45.2.11"</span><span class="p">,</span><span class="w"> </span><span class="nt">"region"</span><span class="p">:</span><span class="w"> </span><span class="s2">"/api/infra/v1/region/testing-provider/testing-region/"</span><span class="p">,</span><span class="w"> </span><span class="nt">"resource_uri"</span><span class="p">:</span><span class="w"> </span><span class="s2">"/api/infra/v1/user_namespace/node/fc1a5bb9-17f5-4819-b667-8c7cd819e949/"</span><span class="p">,</span><span class="w"> </span><span class="nt">"state"</span><span class="p">:</span><span class="w"> </span><span class="s2">"Deployed"</span><span class="p">,</span><span class="w"> </span><span class="nt">"tags"</span><span class="p">:</span><span class="w"> </span><span class="p">[</span><span class="w"> </span><span class="p">{</span><span class="nt">"name"</span><span class="p">:</span><span class="w"> </span><span class="s2">"tag_one"</span><span class="p">},</span><span class="w"> </span><span class="p">{</span><span class="nt">"name"</span><span class="p">:</span><span class="w"> </span><span class="s2">"tag-two"</span><span class="p">}</span><span class="w"> </span><span class="p">],</span><span class="w"> </span><span class="nt">"tunnel"</span><span class="p">:</span><span class="w"> </span><span class="s2">"https://tunnel01.cloud.docker.com:12345"</span><span class="p">,</span><span class="w"> </span><span class="nt">"uuid"</span><span class="p">:</span><span class="w"> </span><span class="s2">"fc1a5bb9-17f5-4819-b667-8c7cd819e949"</span><span class="w"> </span><span class="p">}</span><span class="w"> </span></code></pre> <p>A node is a virtual machine provided by a cloud provider where containers can be deployed.</p> <p>This is a <a href="#namespaced-endpoints">namespaced endpoint</a>.</p> <h3 id="attributes">Attributes</h3> <table><thead> <tr> <th>Attribute</th> <th>Description</th> </tr> </thead><tbody> <tr> <td>availability_zone</td> <td>The resource URI of the availability zone where the node is deployed, if any</td> </tr> <tr> <td>uuid</td> <td>A unique identifier for the node generated automatically on creation</td> </tr> <tr> <td>resource_uri</td> <td>A unique API endpoint that represents the node</td> </tr> <tr> <td>external_fqdn</td> <td>An automatically generated FQDN for the node. Containers deployed on this node will inherit this FQDN.</td> </tr> <tr> <td>state</td> <td>The state of the node. See the below table for a list of possible states.</td> </tr> <tr> <td>node_cluster</td> <td>The resource URI of the node cluster to which this node belongs to (if applicable)</td> </tr> <tr> <td>node_type</td> <td>The resource URI of the node type used for the node</td> </tr> <tr> <td>region</td> <td>The resource URI of the region where the node is deployed</td> </tr> <tr> <td>docker_execdriver</td> <td>Docker’s execution driver used in the node</td> </tr> <tr> <td>docker_graphdriver</td> <td>Docker’s storage driver used in the node</td> </tr> <tr> <td>docker_version</td> <td>Docker’s version used in the node</td> </tr> <tr> <td>cpu</td> <td>Node number of CPUs</td> </tr> <tr> <td>disk</td> <td>Node storage size in GB</td> </tr> <tr> <td>memory</td> <td>Node memory in MB</td> </tr> <tr> <td>current_num_containers</td> <td>The actual number of containers deployed in this node</td> </tr> <tr> <td>last_seen</td> <td>Date and time of the last time the node was contacted by Docker Cloud</td> </tr> <tr> <td>public_ip</td> <td>The public IP allocated to the node</td> </tr> <tr> <td>tunnel</td> <td>If the node does not accept incoming connections to port 2375, the address of the reverse tunnel to access the docker daemon, or <code class="prettyprint">null</code> otherwise</td> </tr> <tr> <td>deployed_datetime</td> <td>The date and time when this node cluster was deployed</td> </tr> <tr> <td>destroyed_datetime</td> <td>The date and time when this node cluster was terminated (if applicable)</td> </tr> <tr> <td>tags</td> <td>List of tags to identify the node when deploying services (see <a href="/docker-cloud/apps/deploy-tags/">Tags</a> for more information)</td> </tr> <tr> <td>nickname</td> <td>A user-friendly name for the node (<code class="prettyprint">external_fqdn</code> by default)</td> </tr> </tbody></table> <h3 id="node-states">Node states</h3> <table><thead> <tr> <th>State</th> <th>Description</th> </tr> </thead><tbody> <tr> <td>Deploying</td> <td>The node is being deployed in the cloud provider. No actions allowed in this state.</td> </tr> <tr> <td>Deployed</td> <td>The node is deployed and provisioned and is ready to deploy containers. Possible actions in this state: <code class="prettyprint">terminate</code>, <code class="prettyprint">docker-upgrade</code>.</td> </tr> <tr> <td>Unreachable</td> <td>The node is deployed but Docker Cloud cannot connect to the docker daemon. Possible actions in this state: <code class="prettyprint">health-check</code> and <code class="prettyprint">terminate</code>.</td> </tr> <tr> <td>Upgrading</td> <td>The node docker daemon is being upgraded. No actions allowed in this state.</td> </tr> <tr> <td>Terminating</td> <td>The node is being terminated in the cloud provider. No actions allowed in this state.</td> </tr> <tr> <td>Terminated</td> <td>The node has been terminated and is no longer present in the cloud provider. No actions allowed in this state.</td> </tr> </tbody></table> <h2 id="list-all-nodes">List all nodes</h2> <pre class="highlight python"><code><span class="kn">import</span> <span class="nn">dockercloud</span> <span class="n">nodes</span> <span class="o">=</span> <span class="n">dockercloud</span><span class="o">.</span><span class="n">Node</span><span class="o">.</span><span class="nb">list</span><span class="p">()</span> </code></pre> <pre class="highlight go"><code><span class="k">import</span><span class="x"> </span><span class="s">"github.com/docker/go-dockercloud/dockercloud"</span><span class="x"> </span><span class="n">nodeList</span><span class="p">,</span><span class="x"> </span><span class="n">err</span><span class="x"> </span><span class="o">:=</span><span class="x"> </span><span class="n">dockercloud</span><span class="o">.</span><span class="n">ListNodes</span><span class="p">()</span><span class="x"> </span><span class="k">if</span><span class="x"> </span><span class="n">err</span><span class="x"> </span><span class="o">!=</span><span class="x"> </span><span class="no">nil</span><span class="x"> </span><span class="p">{</span><span class="x"> </span><span class="n">log</span><span class="o">.</span><span class="n">Println</span><span class="p">(</span><span class="n">err</span><span class="p">)</span><span class="x"> </span><span class="p">}</span><span class="x"> </span><span class="n">log</span><span class="o">.</span><span class="n">Println</span><span class="p">(</span><span class="n">nodeList</span><span class="p">)</span><span class="x"> </span></code></pre> <pre class="highlight http"><code><span class="nf">GET</span> <span class="nn">/api/infra/v1/node/</span> <span class="k">HTTP</span><span class="o">/</span><span class="m">1.1</span> <span class="na">Host</span><span class="p">:</span> <span class="s">cloud.docker.com</span> <span class="na">Authorization</span><span class="p">:</span> <span class="s">Basic dXNlcm5hbWU6YXBpa2V5</span> <span class="na">Accept</span><span class="p">:</span> <span class="s">application/json</span> </code></pre> <pre class="highlight shell"><code>docker-cloud node ls </code></pre> <p>Lists all current and recently terminated nodes. Returns a list of <code class="prettyprint">Node</code> objects.</p> <h3 id="endpoint-type">Endpoint Type</h3> <p>Available in Docker Cloud’s <strong>REST API</strong></p> <h3 id="http-request">HTTP Request</h3> <p><code class="prettyprint">GET /api/infra/v1/[optional_namespace/]node/</code></p> <h3 id="query-parameters">Query Parameters</h3> <table><thead> <tr> <th>Parameter</th> <th>Description</th> </tr> </thead><tbody> <tr> <td>uuid</td> <td>Filter by UUID</td> </tr> <tr> <td>state</td> <td>Filter by state. Possible values: <code class="prettyprint">Deploying</code>, <code class="prettyprint">Deployed</code>, <code class="prettyprint">Unreachable</code>, <code class="prettyprint">Upgrading</code>, <code class="prettyprint">Terminating</code>, <code class="prettyprint">Terminated</code></td> </tr> <tr> <td>node_cluster</td> <td>Filter by resource URI of the target node cluster</td> </tr> <tr> <td>node_type</td> <td>Filter by resource URI of the target node type</td> </tr> <tr> <td>region</td> <td>Filter by resource URI of the target region</td> </tr> <tr> <td>docker_version</td> <td>Filter by Docker engine version running in the nodes</td> </tr> </tbody></table> <h2 id="get-an-existing-node">Get an existing node</h2> <pre class="highlight python"><code><span class="kn">import</span> <span class="nn">dockercloud</span> <span class="n">node</span> <span class="o">=</span> <span class="n">dockercloud</span><span class="o">.</span><span class="n">Node</span><span class="o">.</span><span class="n">fetch</span><span class="p">(</span><span class="s">"7eaf7fff-882c-4f3d-9a8f-a22317ac00ce"</span><span class="p">)</span> </code></pre> <pre class="highlight go"><code><span class="k">import</span><span class="x"> </span><span class="s">"github.com/docker/go-dockercloud/dockercloud"</span><span class="x"> </span><span class="n">node</span><span class="p">,</span><span class="x"> </span><span class="n">err</span><span class="x"> </span><span class="o">:=</span><span class="x"> </span><span class="n">dockercloud</span><span class="o">.</span><span class="n">GetNode</span><span class="p">(</span><span class="s">"7eaf7fff-882c-4f3d-9a8f-a22317ac00ce"</span><span class="p">)</span><span class="x"> </span><span class="k">if</span><span class="x"> </span><span class="n">err</span><span class="x"> </span><span class="o">!=</span><span class="x"> </span><span class="no">nil</span><span class="x"> </span><span class="p">{</span><span class="x"> </span><span class="n">log</span><span class="o">.</span><span class="n">Println</span><span class="p">(</span><span class="n">err</span><span class="p">)</span><span class="x"> </span><span class="p">}</span><span class="x"> </span><span class="n">log</span><span class="o">.</span><span class="n">Println</span><span class="p">(</span><span class="n">node</span><span class="p">)</span><span class="x"> </span></code></pre> <pre class="highlight http"><code><span class="nf">GET</span> <span class="nn">/api/infra/v1/node/7eaf7fff-882c-4f3d-9a8f-a22317ac00ce/</span> <span class="k">HTTP</span><span class="o">/</span><span class="m">1.1</span> <span class="na">Host</span><span class="p">:</span> <span class="s">cloud.docker.com</span> <span class="na">Authorization</span><span class="p">:</span> <span class="s">Basic dXNlcm5hbWU6YXBpa2V5</span> <span class="na">Accept</span><span class="p">:</span> <span class="s">application/json</span> </code></pre> <pre class="highlight shell"><code>docker-cloud node inspect 7eaf7fff </code></pre> <p>Get all the details of an specific node</p> <h3 id="endpoint-type">Endpoint Type</h3> <p>Available in Docker Cloud’s <strong>REST API</strong></p> <h3 id="http-request">HTTP Request</h3> <p><code class="prettyprint">GET /api/infra/v1/[optional_namespace/]node/(uuid)/</code></p> <h3 id="path-parameters">Path Parameters</h3> <table><thead> <tr> <th>Parameter</th> <th>Description</th> </tr> </thead><tbody> <tr> <td>uuid</td> <td>The UUID of the node to retrieve</td> </tr> </tbody></table> <h2 id="update-a-node">Update a node</h2> <pre class="highlight python"><code><span class="kn">import</span> <span class="nn">dockercloud</span> <span class="n">node</span> <span class="o">=</span> <span class="n">dockercloud</span><span class="o">.</span><span class="n">Node</span><span class="o">.</span><span class="n">fetch</span><span class="p">(</span><span class="s">"7eaf7fff-882c-4f3d-9a8f-a22317ac00ce"</span><span class="p">)</span> <span class="n">node</span><span class="o">.</span><span class="n">tags</span><span class="o">.</span><span class="n">add</span><span class="p">([</span><span class="s">"tag-1"</span><span class="p">])</span> <span class="n">node</span><span class="o">.</span><span class="n">save</span><span class="p">()</span> </code></pre> <pre class="highlight go"><code><span class="k">import</span><span class="x"> </span><span class="s">"github.com/docker/go-dockercloud/dockercloud"</span><span class="x"> </span><span class="n">node</span><span class="p">,</span><span class="x"> </span><span class="n">err</span><span class="x"> </span><span class="o">:=</span><span class="x"> </span><span class="n">dockercloud</span><span class="o">.</span><span class="n">GetNode</span><span class="p">(</span><span class="s">"7eaf7fff-882c-4f3d-9a8f-a22317ac00ce"</span><span class="p">)</span><span class="x"> </span><span class="k">if</span><span class="x"> </span><span class="n">err</span><span class="x"> </span><span class="o">!=</span><span class="x"> </span><span class="no">nil</span><span class="x"> </span><span class="p">{</span><span class="x"> </span><span class="n">log</span><span class="o">.</span><span class="n">Println</span><span class="p">(</span><span class="n">err</span><span class="p">)</span><span class="x"> </span><span class="p">}</span><span class="x"> </span><span class="k">if</span><span class="x"> </span><span class="n">err</span><span class="x"> </span><span class="o">=</span><span class="x"> </span><span class="n">node</span><span class="o">.</span><span class="n">Update</span><span class="p">(</span><span class="n">dockercloud</span><span class="o">.</span><span class="n">Node</span><span class="p">{</span><span class="n">Tags</span><span class="o">:</span><span class="x"> </span><span class="p">[]</span><span class="kt">string</span><span class="p">{{</span><span class="n">Name</span><span class="o">:</span><span class="x"> </span><span class="s">"tag-1"</span><span class="p">}}});</span><span class="x"> </span><span class="n">err</span><span class="x"> </span><span class="o">!=</span><span class="x"> </span><span class="no">nil</span><span class="x"> </span><span class="p">{</span><span class="x"> </span><span class="n">log</span><span class="o">.</span><span class="n">Println</span><span class="p">(</span><span class="n">err</span><span class="p">)</span><span class="x"> </span><span class="p">}</span><span class="x"> </span></code></pre> <pre class="highlight http"><code><span class="nf">PATCH</span> <span class="nn">/api/infra/v1/node/7eaf7fff-882c-4f3d-9a8f-a22317ac00ce/</span> <span class="k">HTTP</span><span class="o">/</span><span class="m">1.1</span> <span class="na">Host</span><span class="p">:</span> <span class="s">cloud.docker.com</span> <span class="na">Authorization</span><span class="p">:</span> <span class="s">Basic dXNlcm5hbWU6YXBpa2V5</span> <span class="na">Accept</span><span class="p">:</span> <span class="s">application/json</span> {"tags": [{"name": "tag-1"}], "nickname": "dev node"} </code></pre> <pre class="highlight shell"><code>docker-cloud tag add -t tag-1 7eaf7fff docker-cloud tag <span class="nb">set</span> -t tag-2 7eaf7fff </code></pre> <p>Names the node with a user-friendly name and/or replaces the old tags for the new list provided.</p> <h3 id="endpoint-type">Endpoint Type</h3> <p>Available in Docker Cloud’s <strong>REST API</strong></p> <h3 id="http-request">HTTP Request</h3> <p><code class="prettyprint">PATCH /api/infra/v1/[optional_namespace/]node/(uuid)/</code></p> <h3 id="path-parameters">Path Parameters</h3> <table><thead> <tr> <th>Parameter</th> <th>Description</th> </tr> </thead><tbody> <tr> <td>uuid</td> <td>The UUID of the node to retrieve</td> </tr> </tbody></table> <h3 id="json-parameters">JSON Parameters</h3> <table><thead> <tr> <th>Parameter</th> <th>Description</th> </tr> </thead><tbody> <tr> <td>nickname</td> <td>(optional) A user-friendly name for the node (<code class="prettyprint">external_fqdn</code> by default)</td> </tr> <tr> <td>tags</td> <td>(optional) List of tags the node will have. This operation replaces the user tag list.</td> </tr> </tbody></table> <h2 id="upgrade-docker-daemon">Upgrade Docker Daemon</h2> <pre class="highlight python"><code><span class="kn">import</span> <span class="nn">dockercloud</span> <span class="n">node</span> <span class="o">=</span> <span class="n">dockercloud</span><span class="o">.</span><span class="n">Node</span><span class="o">.</span><span class="n">fetch</span><span class="p">(</span><span class="s">"7eaf7fff-882c-4f3d-9a8f-a22317ac00ce"</span><span class="p">)</span> <span class="n">node</span><span class="o">.</span><span class="n">upgrade_docker</span><span class="p">()</span> </code></pre> <pre class="highlight go"><code><span class="k">import</span><span class="x"> </span><span class="s">"github.com/docker/go-dockercloud/dockercloud"</span><span class="x"> </span><span class="n">node</span><span class="p">,</span><span class="x"> </span><span class="n">err</span><span class="x"> </span><span class="o">:=</span><span class="x"> </span><span class="n">dockercloud</span><span class="o">.</span><span class="n">GetNode</span><span class="p">(</span><span class="s">"7eaf7fff-882c-4f3d-9a8f-a22317ac00ce"</span><span class="p">)</span><span class="x"> </span><span class="k">if</span><span class="x"> </span><span class="n">err</span><span class="x"> </span><span class="o">!=</span><span class="x"> </span><span class="no">nil</span><span class="x"> </span><span class="p">{</span><span class="x"> </span><span class="n">log</span><span class="o">.</span><span class="n">Println</span><span class="p">(</span><span class="n">err</span><span class="p">)</span><span class="x"> </span><span class="p">}</span><span class="x"> </span><span class="k">if</span><span class="x"> </span><span class="n">err</span><span class="x"> </span><span class="o">=</span><span class="x"> </span><span class="n">node</span><span class="o">.</span><span class="n">Upgrade</span><span class="p">();</span><span class="x"> </span><span class="n">err</span><span class="x"> </span><span class="o">!=</span><span class="x"> </span><span class="no">nil</span><span class="x"> </span><span class="p">{</span><span class="x"> </span><span class="n">log</span><span class="o">.</span><span class="n">Println</span><span class="p">(</span><span class="n">err</span><span class="p">)</span><span class="x"> </span><span class="p">}</span><span class="x"> </span></code></pre> <pre class="highlight http"><code><span class="nf">POST</span> <span class="nn">/api/infra/v1/node/7eaf7fff-882c-4f3d-9a8f-a22317ac00ce/docker-upgrade/</span> <span class="k">HTTP</span><span class="o">/</span><span class="m">1.1</span> <span class="na">Host</span><span class="p">:</span> <span class="s">cloud.docker.com</span> <span class="na">Authorization</span><span class="p">:</span> <span class="s">Basic dXNlcm5hbWU6YXBpa2V5</span> <span class="na">Accept</span><span class="p">:</span> <span class="s">application/json</span> </code></pre> <pre class="highlight shell"><code>docker-cloud node upgrade 7eaf7fff </code></pre> <p>Upgrades the docker daemon of the node. This will restart your containers on that node. See <a href="/docker-cloud/infrastructure/docker-upgrade/">Docker upgrade</a> for more information.</p> <h3 id="endpoint-type">Endpoint Type</h3> <p>Available in Docker Cloud’s <strong>REST API</strong></p> <h3 id="http-request">HTTP Request</h3> <p><code class="prettyprint">POST /api/infra/v1/[optional_namespace/]node/(uuid)/docker-upgrade/</code></p> <h3 id="path-parameters">Path Parameters</h3> <table><thead> <tr> <th>Parameter</th> <th>Description</th> </tr> </thead><tbody> <tr> <td>uuid</td> <td>The UUID of the node to upgrade</td> </tr> </tbody></table> <h2 id="perform-a-health-check-of-a-node">Perform a health check of a node</h2> <pre class="highlight http"><code><span class="nf">POST</span> <span class="nn">/api/infra/v1/node/7eaf7fff-882c-4f3d-9a8f-a22317ac00ce/health-check/</span> <span class="k">HTTP</span><span class="o">/</span><span class="m">1.1</span> <span class="na">Host</span><span class="p">:</span> <span class="s">cloud.docker.com</span> <span class="na">Authorization</span><span class="p">:</span> <span class="s">Basic dXNlcm5hbWU6YXBpa2V5</span> <span class="na">Accept</span><span class="p">:</span> <span class="s">application/json</span> </code></pre> <p>Tests connectivity between Docker Cloud and the node. Updates the node status to <code class="prettyprint">Deployed</code> if the check was successful, or to <code class="prettyprint">Unreachable</code> otherwise.</p> <h3 id="endpoint-type">Endpoint Type</h3> <p>Available in Docker Cloud’s <strong>REST API</strong></p> <h3 id="http-request">HTTP Request</h3> <p><code class="prettyprint">POST /api/infra/v1/[optional_namespace/]node/(uuid)/health-check/</code></p> <h3 id="path-parameters">Path Parameters</h3> <table><thead> <tr> <th>Parameter</th> <th>Description</th> </tr> </thead><tbody> <tr> <td>uuid</td> <td>The UUID of the node to perform the health check to</td> </tr> </tbody></table> <h2 id="terminate-a-node">Terminate a node</h2> <pre class="highlight python"><code><span class="kn">import</span> <span class="nn">dockercloud</span> <span class="n">node</span> <span class="o">=</span> <span class="n">dockercloud</span><span class="o">.</span><span class="n">Node</span><span class="o">.</span><span class="n">fetch</span><span class="p">(</span><span class="s">"7eaf7fff-882c-4f3d-9a8f-a22317ac00ce"</span><span class="p">)</span> <span class="n">node</span><span class="o">.</span><span class="n">delete</span><span class="p">()</span> </code></pre> <pre class="highlight http"><code><span class="nf">DELETE</span> <span class="nn">/api/infra/v1/node/7eaf7fff-882c-4f3d-9a8f-a22317ac00ce/</span> <span class="k">HTTP</span><span class="o">/</span><span class="m">1.1</span> <span class="na">Host</span><span class="p">:</span> <span class="s">cloud.docker.com</span> <span class="na">Authorization</span><span class="p">:</span> <span class="s">Basic dXNlcm5hbWU6YXBpa2V5</span> <span class="na">Accept</span><span class="p">:</span> <span class="s">application/json</span> </code></pre> <pre class="highlight go"><code><span class="k">import</span><span class="x"> </span><span class="s">"github.com/docker/go-dockercloud/dockercloud"</span><span class="x"> </span><span class="n">node</span><span class="p">,</span><span class="x"> </span><span class="n">err</span><span class="x"> </span><span class="o">:=</span><span class="x"> </span><span class="n">dockercloud</span><span class="o">.</span><span class="n">GetNode</span><span class="p">(</span><span class="s">"7eaf7fff-882c-4f3d-9a8f-a22317ac00ce"</span><span class="p">)</span><span class="x"> </span><span class="k">if</span><span class="x"> </span><span class="n">err</span><span class="x"> </span><span class="o">!=</span><span class="x"> </span><span class="no">nil</span><span class="x"> </span><span class="p">{</span><span class="x"> </span><span class="n">log</span><span class="o">.</span><span class="n">Println</span><span class="p">(</span><span class="n">err</span><span class="p">)</span><span class="x"> </span><span class="p">}</span><span class="x"> </span><span class="k">if</span><span class="x"> </span><span class="n">err</span><span class="x"> </span><span class="o">=</span><span class="x"> </span><span class="n">node</span><span class="o">.</span><span class="n">Terminate</span><span class="p">();</span><span class="x"> </span><span class="n">err</span><span class="x"> </span><span class="o">!=</span><span class="x"> </span><span class="no">nil</span><span class="x"> </span><span class="p">{</span><span class="x"> </span><span class="n">log</span><span class="o">.</span><span class="n">Println</span><span class="p">(</span><span class="n">err</span><span class="p">)</span><span class="x"> </span><span class="p">}</span><span class="x"> </span></code></pre> <pre class="highlight shell"><code>docker-cloud node rm 7eaf7fff </code></pre> <p>Terminates the specified node.</p> <h3 id="endpoint-type">Endpoint Type</h3> <p>Available in Docker Cloud’s <strong>REST API</strong></p> <h3 id="http-request">HTTP Request</h3> <p><code class="prettyprint">DELETE /api/infra/v1/[optional_namespace/]node/(uuid)/</code></p> <h3 id="path-parameters">Path Parameters</h3> <table><thead> <tr> <th>Parameter</th> <th>Description</th> </tr> </thead><tbody> <tr> <td>uuid</td> <td>The UUID of the node to terminate</td> </tr> </tbody></table> </div> <div class="dark-box"> </div> </div> </body> </html>