Secrets¶
Create a secret¶
import asyncio
import aiodocker
docker = aiodocker.Docker()
async def create_secret():
secret = await docker.secrets.create(
name="my_secret",
data="you can not read that terrible secret"
)
await docker.close()
return secret
async def create_service(TaskTemplate):
service = await docker.services.create(
task_template=TaskTemplate,
name="my_service"
)
await docker.close()
if __name__ == '__main__':
loop = asyncio.get_event_loop()
my_secret = loop.run_until_complete(create_secret())
TaskTemplate = {
"ContainerSpec": {
"Image": "redis",
"Secrets": [
{
"File": {
"Name": my_secret["Spec"]["Name"],
"UID": "0",
"GID": "0",
"Mode": 292
},
"SecretID": my_secret["ID"],
"SecretName": my_secret["Spec"]["Name"]
}
],
},
}
loop.run_until_complete(create_service(TaskTemplate))
loop.close()
Reference¶
DockerSecrets¶
- class aiodocker.secrets.DockerSecrets(docker)[source]¶
- coroutine create(self, name, data, *, b64=False, labels=None, driver=None, templating=None)[source]¶
Create a secret
- Parameters
name (
str
) – name of the secretlabels (
Optional
[Mapping
[str
,str
]]) – user-defined key/value metadatadata (
str
) – data to store as secretb64 (
bool
) – True if data is already Base64-url-safe-encodeddriver (
Optional
[Mapping
]) – Driver represents a driver (network, logging, secrets).templating (
Optional
[Mapping
]) – Driver represents a driver (network, logging, secrets).
- Return type
- Returns
a dict with info of the created secret
- coroutine list(self, *, filters=None)[source]¶
Return a list of secrets
- Available filters:
id=<secret id> label=<key> or label=<key>=value name=<secret name> names=<secret name>
- coroutine update(self, secret_id, version, *, name=None, data=None, b64=False, labels=None, driver=None, templating=None)[source]¶
Update a secret.
- Parameters
secret_id (
str
) – ID of the secret.labels (
Optional
[Mapping
[str
,str
]]) – user-defined key/value metadatab64 (
bool
) – True if data is already Base64-url-safe-encodeddriver (
Optional
[Mapping
]) – Driver represents a driver (network, logging, secrets).templating (
Optional
[Mapping
]) – Driver represents a driver (network, logging, secrets).
- Return type
- Returns
True if successful.