add api docs for secrets
Signed-off-by: Evan Hazlett <ejhazlett@gmail.com>
This commit is contained in:
parent
427c70d977
commit
0bcb65ccba
1 changed files with 129 additions and 1 deletions
|
@ -240,7 +240,7 @@ List containers
|
|||
- `volume`=(`<volume name>` or `<mount point destination>`)
|
||||
- `network`=(`<network id>` or `<network name>`)
|
||||
- `health`=(`starting`|`healthy`|`unhealthy`|`none`)
|
||||
|
||||
|
||||
**Status codes**:
|
||||
|
||||
- **200** – no error
|
||||
|
@ -5842,6 +5842,134 @@ Get details on a task
|
|||
- **404** – unknown task
|
||||
- **500** – server error
|
||||
|
||||
## 3.11 Secrets
|
||||
|
||||
**Note**: Secret operations require the engine to be part of a swarm.
|
||||
|
||||
### List secrets
|
||||
|
||||
`GET /secrets`
|
||||
|
||||
List secrets
|
||||
|
||||
**Example request**:
|
||||
|
||||
GET /secrets HTTP/1.1
|
||||
|
||||
**Example response**:
|
||||
|
||||
[
|
||||
{
|
||||
"ID": "ktnbjxoalbkvbvedmg1urrz8h",
|
||||
"Version": {
|
||||
"Index": 11
|
||||
},
|
||||
"CreatedAt": "2016-11-05T01:20:17.327670065Z",
|
||||
"UpdatedAt": "2016-11-05T01:20:17.327670065Z",
|
||||
"Spec": {
|
||||
"Name": "app-dev.crt"
|
||||
},
|
||||
"Digest": "sha256:11d7c6f38253b73e608153c9f662a191ae605e1a3d9b756b0b3426388f91d3fa",
|
||||
"SecretSize": 31
|
||||
}
|
||||
]
|
||||
|
||||
|
||||
**Query parameters**:
|
||||
|
||||
- **filters** - a JSON encoded value of the filters (a `map[string][]string`) to process on the secrets list. Available filters:
|
||||
- `names=<secret name>`
|
||||
|
||||
**Status codes**:
|
||||
|
||||
- **200** – no error
|
||||
|
||||
### Create a secret
|
||||
|
||||
`POST /secrets/create`
|
||||
|
||||
Create a secret
|
||||
|
||||
**Example request**:
|
||||
|
||||
POST /secrets/create HTTP/1.1
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"Name": "app-key.crt",
|
||||
"Labels": {
|
||||
"foo": "bar"
|
||||
},
|
||||
"Data": "VEhJUyBJUyBOT1QgQSBSRUFMIENFUlRJRklDQVRFCg=="
|
||||
}
|
||||
|
||||
**Example response**:
|
||||
|
||||
HTTP/1.1 201 Created
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"ID": "ktnbjxoalbkvbvedmg1urrz8h"
|
||||
}
|
||||
|
||||
**Status codes**:
|
||||
|
||||
- **201** – no error
|
||||
- **406** – server error or node is not part of a swarm
|
||||
- **409** – name conflicts with an existing object
|
||||
|
||||
**JSON Parameters**:
|
||||
|
||||
- **Name** – User-defined name for the secret.
|
||||
- **Labels** – A map of labels to associate with the secret (e.g., `{"key":"value", "key2":"value2"}`).
|
||||
- **Data** – Base64-url-safe-encoded secret data
|
||||
|
||||
### Inspect a secret
|
||||
|
||||
`GET /secrets/(secret id)`
|
||||
|
||||
Get details on a secret
|
||||
|
||||
**Example request**:
|
||||
|
||||
GET /secrets/ktnbjxoalbkvbvedmg1urrz8h HTTP/1.1
|
||||
|
||||
**Example response**:
|
||||
|
||||
{
|
||||
"ID": "ktnbjxoalbkvbvedmg1urrz8h",
|
||||
"Version": {
|
||||
"Index": 11
|
||||
},
|
||||
"CreatedAt": "2016-11-05T01:20:17.327670065Z",
|
||||
"UpdatedAt": "2016-11-05T01:20:17.327670065Z",
|
||||
"Spec": {
|
||||
"Name": "app-dev.crt"
|
||||
},
|
||||
"Digest": "sha256:11d7c6f38253b73e608153c9f662a191ae605e1a3d9b756b0b3426388f91d3fa",
|
||||
"SecretSize": 31
|
||||
}
|
||||
|
||||
**Status codes**:
|
||||
|
||||
- **200** – no error
|
||||
- **404** – unknown secret
|
||||
- **500** – server error
|
||||
|
||||
### Remove a secret
|
||||
|
||||
`DELETE /secrets/(id)`
|
||||
|
||||
Remove the secret `id` from the secret store
|
||||
|
||||
**Example request**:
|
||||
|
||||
DELETE /secrets/ktnbjxoalbkvbvedmg1urrz8h HTTP/1.1
|
||||
|
||||
**Example response**:
|
||||
|
||||
HTTP/1.1 204 No Content
|
||||
|
||||
# 4. Going further
|
||||
|
||||
## 4.1 Inside `docker run`
|
||||
|
|
Loading…
Reference in a new issue