mirror of https://github.com/docker/docs.git
541 lines
29 KiB
HTML
541 lines
29 KiB
HTML
<!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 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>
|
|
<div class="google-analytics">
|
|
<!-- Google Tag Manager -->
|
|
<noscript>
|
|
<iframe src="//www.googletagmanager.com/ns.html?id=GTM-WLGFZV"
|
|
height="0" width="0" style="display:none;visibility:hidden"></iframe>
|
|
</noscript>
|
|
<script>
|
|
(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
|
|
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
|
|
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
|
|
'//www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
|
|
})(window,document,'script','dataLayer','GTM-WLGFZV');
|
|
</script>
|
|
<!-- End Google Tag Manager -->
|
|
</div>
|
|
</body>
|
|
</html>
|