@emulates/docker 0.0.0-stage → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/API_EVIDENCE.md +392 -0
- package/CHANGELOG.md +9 -0
- package/DISCOVERY.md +54 -0
- package/ORACLE.md +85 -0
- package/README.md +446 -2
- package/SUPPORT.md +23 -0
- package/dist/chunk-NSXRVOHP.js +4089 -0
- package/dist/chunk-NSXRVOHP.js.map +7 -0
- package/dist/chunk-ZO7PO2NA.js +629 -0
- package/dist/chunk-ZO7PO2NA.js.map +7 -0
- package/dist/cli.js +805 -0
- package/dist/cli.js.map +7 -0
- package/dist/index.d.ts +1306 -0
- package/dist/index.js +17 -0
- package/dist/index.js.map +7 -0
- package/dist/server.d.ts +1804 -0
- package/dist/server.js +12 -0
- package/dist/server.js.map +7 -0
- package/evidence/engine-29.8.0-api-1.52.json +302 -0
- package/openapi.yaml +1188 -0
- package/package.json +121 -4
- package/scripts/docker-oracle.mjs +276 -0
- package/scripts/oracle-client.mjs +229 -0
package/openapi.yaml
ADDED
|
@@ -0,0 +1,1188 @@
|
|
|
1
|
+
openapi: 3.1.0
|
|
2
|
+
info:
|
|
3
|
+
title: Docker Engine (Emulates)
|
|
4
|
+
version: "1.52"
|
|
5
|
+
description: Docker Engine 29.1.0 / API 1.52 observation subset. Unversioned and
|
|
6
|
+
/v1.52 aliases; unsupported older mock versions return 501. Container
|
|
7
|
+
creation is supported; start and wait use explicit simulated completion;
|
|
8
|
+
stop, kill and removal use explicit termination controls. Attach is unavailable
|
|
9
|
+
through Fetch; the Node server supports scripted non-TTY duplex streams.
|
|
10
|
+
Synthetic metadata is not host attestation. See
|
|
11
|
+
API_EVIDENCE.md.
|
|
12
|
+
x-emulates-upstream:
|
|
13
|
+
url: https://github.com/moby/moby/blob/710302ecf2e958db92cb7d92f8838ea063a31765/api/swagger.yaml
|
|
14
|
+
note: Selected operation inventory adapted from Engine 29.1.0/API 1.52.
|
|
15
|
+
Unsupported operations have no successful implementation.
|
|
16
|
+
servers:
|
|
17
|
+
- url: http://127.0.0.1
|
|
18
|
+
paths:
|
|
19
|
+
/containers/json:
|
|
20
|
+
get:
|
|
21
|
+
operationId: ContainerList
|
|
22
|
+
summary: List containers
|
|
23
|
+
x-emulates:
|
|
24
|
+
supported: true
|
|
25
|
+
parity:
|
|
26
|
+
enabled: true
|
|
27
|
+
safe: true
|
|
28
|
+
responses:
|
|
29
|
+
"200":
|
|
30
|
+
description: no error
|
|
31
|
+
content:
|
|
32
|
+
application/json:
|
|
33
|
+
schema:
|
|
34
|
+
type: array
|
|
35
|
+
items:
|
|
36
|
+
type: object
|
|
37
|
+
properties:
|
|
38
|
+
Id:
|
|
39
|
+
type: string
|
|
40
|
+
Names:
|
|
41
|
+
type: array
|
|
42
|
+
items:
|
|
43
|
+
type: string
|
|
44
|
+
Image:
|
|
45
|
+
type: string
|
|
46
|
+
ImageID:
|
|
47
|
+
type: string
|
|
48
|
+
Command:
|
|
49
|
+
type: string
|
|
50
|
+
Created:
|
|
51
|
+
type: integer
|
|
52
|
+
State:
|
|
53
|
+
type: string
|
|
54
|
+
Status:
|
|
55
|
+
type: string
|
|
56
|
+
Labels:
|
|
57
|
+
type: object
|
|
58
|
+
additionalProperties:
|
|
59
|
+
type: string
|
|
60
|
+
Ports:
|
|
61
|
+
type: array
|
|
62
|
+
items:
|
|
63
|
+
type: object
|
|
64
|
+
HostConfig:
|
|
65
|
+
type: object
|
|
66
|
+
NetworkSettings:
|
|
67
|
+
type: object
|
|
68
|
+
Mounts:
|
|
69
|
+
type: array
|
|
70
|
+
items:
|
|
71
|
+
type: object
|
|
72
|
+
required:
|
|
73
|
+
- Id
|
|
74
|
+
- Names
|
|
75
|
+
- Image
|
|
76
|
+
- ImageID
|
|
77
|
+
- Command
|
|
78
|
+
- Created
|
|
79
|
+
- State
|
|
80
|
+
- Status
|
|
81
|
+
- Labels
|
|
82
|
+
- Ports
|
|
83
|
+
- HostConfig
|
|
84
|
+
- NetworkSettings
|
|
85
|
+
- Mounts
|
|
86
|
+
"400":
|
|
87
|
+
description: Invalid query or ambiguous container ID
|
|
88
|
+
content:
|
|
89
|
+
application/json:
|
|
90
|
+
schema:
|
|
91
|
+
$ref: "#/components/schemas/Error"
|
|
92
|
+
"500":
|
|
93
|
+
description: server error
|
|
94
|
+
content:
|
|
95
|
+
application/json:
|
|
96
|
+
schema:
|
|
97
|
+
$ref: "#/components/schemas/Error"
|
|
98
|
+
"501":
|
|
99
|
+
description: Emulates unsupported API version or filter feature
|
|
100
|
+
content:
|
|
101
|
+
application/json:
|
|
102
|
+
schema:
|
|
103
|
+
$ref: "#/components/schemas/Error"
|
|
104
|
+
parameters:
|
|
105
|
+
- name: all
|
|
106
|
+
in: query
|
|
107
|
+
description: >
|
|
108
|
+
Return all containers. By default, only running containers are shown.
|
|
109
|
+
schema:
|
|
110
|
+
type: boolean
|
|
111
|
+
default: false
|
|
112
|
+
- name: limit
|
|
113
|
+
in: query
|
|
114
|
+
description: |
|
|
115
|
+
Return this number of most recently created containers, including
|
|
116
|
+
non-running ones.
|
|
117
|
+
schema:
|
|
118
|
+
type: integer
|
|
119
|
+
- name: size
|
|
120
|
+
in: query
|
|
121
|
+
description: |
|
|
122
|
+
Return the size of container as fields `SizeRw` and `SizeRootFs`.
|
|
123
|
+
schema:
|
|
124
|
+
type: boolean
|
|
125
|
+
default: false
|
|
126
|
+
- name: filters
|
|
127
|
+
in: query
|
|
128
|
+
description: |
|
|
129
|
+
Filters to process on the container list, encoded as JSON (a
|
|
130
|
+
`map[string][]string`). For example, `{"status": ["paused"]}` will
|
|
131
|
+
only return paused containers.
|
|
132
|
+
|
|
133
|
+
Available filters:
|
|
134
|
+
|
|
135
|
+
- `ancestor`=(`<image-name>[:<tag>]`, `<image id>`, or `<image@digest>`)
|
|
136
|
+
- `before`=(`<container id>` or `<container name>`)
|
|
137
|
+
- `expose`=(`<port>[/<proto>]`|`<startport-endport>/[<proto>]`)
|
|
138
|
+
- `exited=<int>` containers with exit code of `<int>`
|
|
139
|
+
- `health`=(`starting`|`healthy`|`unhealthy`|`none`)
|
|
140
|
+
- `id=<ID>` a container's ID
|
|
141
|
+
- `isolation=`(`default`|`process`|`hyperv`) (Windows daemon only)
|
|
142
|
+
- `is-task=`(`true`|`false`)
|
|
143
|
+
- `label=key` or `label="key=value"` of a container label
|
|
144
|
+
- `name=<name>` a container's name
|
|
145
|
+
- `network`=(`<network id>` or `<network name>`)
|
|
146
|
+
- `publish`=(`<port>[/<proto>]`|`<startport-endport>/[<proto>]`)
|
|
147
|
+
- `since`=(`<container id>` or `<container name>`)
|
|
148
|
+
- `status=`(`created`|`restarting`|`running`|`removing`|`paused`|`exited`|`dead`)
|
|
149
|
+
- `volume`=(`<volume name>` or `<mount point destination>`)
|
|
150
|
+
schema:
|
|
151
|
+
type: string
|
|
152
|
+
/containers/create:
|
|
153
|
+
post:
|
|
154
|
+
operationId: ContainerCreate
|
|
155
|
+
summary: Create a container
|
|
156
|
+
x-emulates:
|
|
157
|
+
supported: true
|
|
158
|
+
parity:
|
|
159
|
+
enabled: true
|
|
160
|
+
safe: false
|
|
161
|
+
responses:
|
|
162
|
+
"201":
|
|
163
|
+
description: Container created successfully
|
|
164
|
+
content:
|
|
165
|
+
application/json:
|
|
166
|
+
schema:
|
|
167
|
+
type: object
|
|
168
|
+
required:
|
|
169
|
+
- Id
|
|
170
|
+
- Warnings
|
|
171
|
+
properties:
|
|
172
|
+
Id:
|
|
173
|
+
type: string
|
|
174
|
+
pattern: ^[a-f0-9]{64}$
|
|
175
|
+
x-emulates-resource:
|
|
176
|
+
type: container
|
|
177
|
+
identity: true
|
|
178
|
+
Warnings:
|
|
179
|
+
type: array
|
|
180
|
+
items:
|
|
181
|
+
type: string
|
|
182
|
+
"400":
|
|
183
|
+
description: bad parameter
|
|
184
|
+
content:
|
|
185
|
+
application/json:
|
|
186
|
+
schema:
|
|
187
|
+
$ref: "#/components/schemas/Error"
|
|
188
|
+
"404":
|
|
189
|
+
description: no such image
|
|
190
|
+
content:
|
|
191
|
+
application/json:
|
|
192
|
+
schema:
|
|
193
|
+
$ref: "#/components/schemas/Error"
|
|
194
|
+
"409":
|
|
195
|
+
description: conflict
|
|
196
|
+
content:
|
|
197
|
+
application/json:
|
|
198
|
+
schema:
|
|
199
|
+
$ref: "#/components/schemas/Error"
|
|
200
|
+
"500":
|
|
201
|
+
description: server error
|
|
202
|
+
content:
|
|
203
|
+
application/json:
|
|
204
|
+
schema:
|
|
205
|
+
$ref: "#/components/schemas/Error"
|
|
206
|
+
"501":
|
|
207
|
+
description: Emulates unsupported creation configuration or API version
|
|
208
|
+
content:
|
|
209
|
+
application/json:
|
|
210
|
+
schema:
|
|
211
|
+
$ref: "#/components/schemas/Error"
|
|
212
|
+
requestBody:
|
|
213
|
+
required: true
|
|
214
|
+
content:
|
|
215
|
+
application/json:
|
|
216
|
+
schema:
|
|
217
|
+
type: object
|
|
218
|
+
properties:
|
|
219
|
+
Image:
|
|
220
|
+
type:
|
|
221
|
+
- string
|
|
222
|
+
- "null"
|
|
223
|
+
WorkingDir:
|
|
224
|
+
type:
|
|
225
|
+
- string
|
|
226
|
+
- "null"
|
|
227
|
+
User:
|
|
228
|
+
type:
|
|
229
|
+
- string
|
|
230
|
+
- "null"
|
|
231
|
+
StopSignal:
|
|
232
|
+
type:
|
|
233
|
+
- string
|
|
234
|
+
- "null"
|
|
235
|
+
Hostname:
|
|
236
|
+
type:
|
|
237
|
+
- string
|
|
238
|
+
- "null"
|
|
239
|
+
Domainname:
|
|
240
|
+
type:
|
|
241
|
+
- string
|
|
242
|
+
- "null"
|
|
243
|
+
Cmd:
|
|
244
|
+
type:
|
|
245
|
+
- array
|
|
246
|
+
- "null"
|
|
247
|
+
items:
|
|
248
|
+
type: string
|
|
249
|
+
Entrypoint:
|
|
250
|
+
type:
|
|
251
|
+
- array
|
|
252
|
+
- "null"
|
|
253
|
+
items:
|
|
254
|
+
type: string
|
|
255
|
+
Env:
|
|
256
|
+
type:
|
|
257
|
+
- array
|
|
258
|
+
- "null"
|
|
259
|
+
items:
|
|
260
|
+
type: string
|
|
261
|
+
AttachStdin:
|
|
262
|
+
type:
|
|
263
|
+
- boolean
|
|
264
|
+
- "null"
|
|
265
|
+
AttachStdout:
|
|
266
|
+
type:
|
|
267
|
+
- boolean
|
|
268
|
+
- "null"
|
|
269
|
+
AttachStderr:
|
|
270
|
+
type:
|
|
271
|
+
- boolean
|
|
272
|
+
- "null"
|
|
273
|
+
OpenStdin:
|
|
274
|
+
type:
|
|
275
|
+
- boolean
|
|
276
|
+
- "null"
|
|
277
|
+
StdinOnce:
|
|
278
|
+
type:
|
|
279
|
+
- boolean
|
|
280
|
+
- "null"
|
|
281
|
+
Tty:
|
|
282
|
+
type:
|
|
283
|
+
- boolean
|
|
284
|
+
- "null"
|
|
285
|
+
NetworkDisabled:
|
|
286
|
+
type:
|
|
287
|
+
- boolean
|
|
288
|
+
- "null"
|
|
289
|
+
Labels:
|
|
290
|
+
type:
|
|
291
|
+
- object
|
|
292
|
+
- "null"
|
|
293
|
+
additionalProperties:
|
|
294
|
+
type: string
|
|
295
|
+
StopTimeout:
|
|
296
|
+
type:
|
|
297
|
+
- integer
|
|
298
|
+
- "null"
|
|
299
|
+
minimum: -1
|
|
300
|
+
HostConfig:
|
|
301
|
+
type:
|
|
302
|
+
- object
|
|
303
|
+
- "null"
|
|
304
|
+
NetworkingConfig:
|
|
305
|
+
type:
|
|
306
|
+
- object
|
|
307
|
+
- "null"
|
|
308
|
+
properties:
|
|
309
|
+
EndpointsConfig:
|
|
310
|
+
type:
|
|
311
|
+
- object
|
|
312
|
+
- "null"
|
|
313
|
+
additionalProperties:
|
|
314
|
+
type: object
|
|
315
|
+
required:
|
|
316
|
+
- Image
|
|
317
|
+
description: Selected creation metadata. Unsupported configuration fields return
|
|
318
|
+
Emulates 501; stored HostConfig/NetworkingConfig is never
|
|
319
|
+
enforced.
|
|
320
|
+
parameters:
|
|
321
|
+
- name: name
|
|
322
|
+
in: query
|
|
323
|
+
schema:
|
|
324
|
+
type: string
|
|
325
|
+
pattern: ^/?[a-zA-Z0-9][a-zA-Z0-9_.-]+$
|
|
326
|
+
- name: platform
|
|
327
|
+
in: query
|
|
328
|
+
schema:
|
|
329
|
+
type: string
|
|
330
|
+
/containers/{id}/json:
|
|
331
|
+
get:
|
|
332
|
+
operationId: ContainerInspect
|
|
333
|
+
summary: Inspect a container
|
|
334
|
+
x-emulates:
|
|
335
|
+
supported: true
|
|
336
|
+
parity:
|
|
337
|
+
enabled: true
|
|
338
|
+
safe: true
|
|
339
|
+
parameters:
|
|
340
|
+
- name: id
|
|
341
|
+
in: path
|
|
342
|
+
required: true
|
|
343
|
+
description: ID or name of the container
|
|
344
|
+
schema:
|
|
345
|
+
type: string
|
|
346
|
+
- name: size
|
|
347
|
+
in: query
|
|
348
|
+
description: Return the size of container as fields `SizeRw` and `SizeRootFs`
|
|
349
|
+
schema:
|
|
350
|
+
type: boolean
|
|
351
|
+
default: false
|
|
352
|
+
responses:
|
|
353
|
+
"200":
|
|
354
|
+
description: no error
|
|
355
|
+
content:
|
|
356
|
+
application/json:
|
|
357
|
+
schema:
|
|
358
|
+
type: object
|
|
359
|
+
properties:
|
|
360
|
+
Id:
|
|
361
|
+
type: string
|
|
362
|
+
Name:
|
|
363
|
+
type: string
|
|
364
|
+
Image:
|
|
365
|
+
type: string
|
|
366
|
+
Created:
|
|
367
|
+
type: string
|
|
368
|
+
Path:
|
|
369
|
+
type: string
|
|
370
|
+
Args:
|
|
371
|
+
type: array
|
|
372
|
+
items:
|
|
373
|
+
type: string
|
|
374
|
+
State:
|
|
375
|
+
type: object
|
|
376
|
+
properties:
|
|
377
|
+
Status:
|
|
378
|
+
type: string
|
|
379
|
+
enum:
|
|
380
|
+
- created
|
|
381
|
+
- running
|
|
382
|
+
- paused
|
|
383
|
+
- restarting
|
|
384
|
+
- removing
|
|
385
|
+
- exited
|
|
386
|
+
- dead
|
|
387
|
+
Running:
|
|
388
|
+
type: boolean
|
|
389
|
+
Paused:
|
|
390
|
+
type: boolean
|
|
391
|
+
Restarting:
|
|
392
|
+
type: boolean
|
|
393
|
+
OOMKilled:
|
|
394
|
+
type: boolean
|
|
395
|
+
Dead:
|
|
396
|
+
type: boolean
|
|
397
|
+
Pid:
|
|
398
|
+
type: integer
|
|
399
|
+
ExitCode:
|
|
400
|
+
type: integer
|
|
401
|
+
Error:
|
|
402
|
+
type: string
|
|
403
|
+
StartedAt:
|
|
404
|
+
type: string
|
|
405
|
+
FinishedAt:
|
|
406
|
+
type: string
|
|
407
|
+
required:
|
|
408
|
+
- Status
|
|
409
|
+
- Running
|
|
410
|
+
- Paused
|
|
411
|
+
- Restarting
|
|
412
|
+
- OOMKilled
|
|
413
|
+
- Dead
|
|
414
|
+
- Pid
|
|
415
|
+
- ExitCode
|
|
416
|
+
- Error
|
|
417
|
+
- StartedAt
|
|
418
|
+
- FinishedAt
|
|
419
|
+
Config:
|
|
420
|
+
type: object
|
|
421
|
+
properties:
|
|
422
|
+
Image:
|
|
423
|
+
type: string
|
|
424
|
+
Labels:
|
|
425
|
+
type: object
|
|
426
|
+
additionalProperties:
|
|
427
|
+
type: string
|
|
428
|
+
Cmd:
|
|
429
|
+
type: array
|
|
430
|
+
items:
|
|
431
|
+
type: string
|
|
432
|
+
Entrypoint:
|
|
433
|
+
type: array
|
|
434
|
+
items:
|
|
435
|
+
type: string
|
|
436
|
+
Env:
|
|
437
|
+
type: array
|
|
438
|
+
items:
|
|
439
|
+
type: string
|
|
440
|
+
WorkingDir:
|
|
441
|
+
type: string
|
|
442
|
+
User:
|
|
443
|
+
type: string
|
|
444
|
+
Tty:
|
|
445
|
+
type: boolean
|
|
446
|
+
OpenStdin:
|
|
447
|
+
type: boolean
|
|
448
|
+
StdinOnce:
|
|
449
|
+
type: boolean
|
|
450
|
+
AttachStdin:
|
|
451
|
+
type: boolean
|
|
452
|
+
AttachStdout:
|
|
453
|
+
type: boolean
|
|
454
|
+
AttachStderr:
|
|
455
|
+
type: boolean
|
|
456
|
+
required:
|
|
457
|
+
- Image
|
|
458
|
+
- Labels
|
|
459
|
+
- Cmd
|
|
460
|
+
- Entrypoint
|
|
461
|
+
- Env
|
|
462
|
+
- WorkingDir
|
|
463
|
+
- User
|
|
464
|
+
- Tty
|
|
465
|
+
- OpenStdin
|
|
466
|
+
- StdinOnce
|
|
467
|
+
- AttachStdin
|
|
468
|
+
- AttachStdout
|
|
469
|
+
- AttachStderr
|
|
470
|
+
HostConfig:
|
|
471
|
+
type: object
|
|
472
|
+
NetworkSettings:
|
|
473
|
+
type: object
|
|
474
|
+
Mounts:
|
|
475
|
+
type: array
|
|
476
|
+
items:
|
|
477
|
+
type: object
|
|
478
|
+
required:
|
|
479
|
+
- Id
|
|
480
|
+
- Name
|
|
481
|
+
- Image
|
|
482
|
+
- Created
|
|
483
|
+
- Path
|
|
484
|
+
- Args
|
|
485
|
+
- State
|
|
486
|
+
- Config
|
|
487
|
+
- HostConfig
|
|
488
|
+
- NetworkSettings
|
|
489
|
+
- Mounts
|
|
490
|
+
"400":
|
|
491
|
+
description: Invalid query or ambiguous container ID
|
|
492
|
+
content:
|
|
493
|
+
application/json:
|
|
494
|
+
schema:
|
|
495
|
+
$ref: "#/components/schemas/Error"
|
|
496
|
+
"404":
|
|
497
|
+
description: no such container
|
|
498
|
+
content:
|
|
499
|
+
application/json:
|
|
500
|
+
schema:
|
|
501
|
+
$ref: "#/components/schemas/Error"
|
|
502
|
+
"500":
|
|
503
|
+
description: server error
|
|
504
|
+
content:
|
|
505
|
+
application/json:
|
|
506
|
+
schema:
|
|
507
|
+
$ref: "#/components/schemas/Error"
|
|
508
|
+
"501":
|
|
509
|
+
description: Emulates unsupported API version or filter feature
|
|
510
|
+
content:
|
|
511
|
+
application/json:
|
|
512
|
+
schema:
|
|
513
|
+
$ref: "#/components/schemas/Error"
|
|
514
|
+
/containers/{id}/start:
|
|
515
|
+
post:
|
|
516
|
+
operationId: ContainerStart
|
|
517
|
+
summary: Start a container
|
|
518
|
+
x-emulates:
|
|
519
|
+
supported: true
|
|
520
|
+
parity:
|
|
521
|
+
enabled: true
|
|
522
|
+
safe: false
|
|
523
|
+
parameters:
|
|
524
|
+
- in: path
|
|
525
|
+
name: id
|
|
526
|
+
required: true
|
|
527
|
+
schema:
|
|
528
|
+
type: string
|
|
529
|
+
responses:
|
|
530
|
+
"204":
|
|
531
|
+
description: no error
|
|
532
|
+
"304":
|
|
533
|
+
description: container already started
|
|
534
|
+
"400":
|
|
535
|
+
description: invalid request or API version
|
|
536
|
+
content:
|
|
537
|
+
application/json:
|
|
538
|
+
schema:
|
|
539
|
+
$ref: "#/components/schemas/Error"
|
|
540
|
+
text/plain:
|
|
541
|
+
schema:
|
|
542
|
+
type: string
|
|
543
|
+
"404":
|
|
544
|
+
description: no such container
|
|
545
|
+
content:
|
|
546
|
+
application/json:
|
|
547
|
+
schema:
|
|
548
|
+
$ref: "#/components/schemas/Error"
|
|
549
|
+
"409":
|
|
550
|
+
description: paused, dead, or removing container
|
|
551
|
+
content:
|
|
552
|
+
application/json:
|
|
553
|
+
schema:
|
|
554
|
+
$ref: "#/components/schemas/Error"
|
|
555
|
+
"500":
|
|
556
|
+
description: server error
|
|
557
|
+
content:
|
|
558
|
+
application/json:
|
|
559
|
+
schema:
|
|
560
|
+
$ref: "#/components/schemas/Error"
|
|
561
|
+
"501":
|
|
562
|
+
description: Emulates unsupported option or API version
|
|
563
|
+
content:
|
|
564
|
+
application/json:
|
|
565
|
+
schema:
|
|
566
|
+
$ref: "#/components/schemas/Error"
|
|
567
|
+
/containers/{id}/stop:
|
|
568
|
+
post:
|
|
569
|
+
operationId: ContainerStop
|
|
570
|
+
summary: Stop a container
|
|
571
|
+
x-emulates:
|
|
572
|
+
supported: true
|
|
573
|
+
parity:
|
|
574
|
+
enabled: false
|
|
575
|
+
safe: false
|
|
576
|
+
reason: Explicit completion controls and pending responses require deterministic
|
|
577
|
+
termination tests, not unbounded generated walks.
|
|
578
|
+
parameters:
|
|
579
|
+
- in: path
|
|
580
|
+
name: id
|
|
581
|
+
required: true
|
|
582
|
+
schema:
|
|
583
|
+
type: string
|
|
584
|
+
- in: query
|
|
585
|
+
name: signal
|
|
586
|
+
schema:
|
|
587
|
+
type: string
|
|
588
|
+
- in: query
|
|
589
|
+
name: t
|
|
590
|
+
schema:
|
|
591
|
+
type: integer
|
|
592
|
+
responses:
|
|
593
|
+
"204":
|
|
594
|
+
description: no error
|
|
595
|
+
"304":
|
|
596
|
+
description: container already stopped
|
|
597
|
+
"400":
|
|
598
|
+
description: Version rejected by Engine (below 1.24 uses plain text)
|
|
599
|
+
content:
|
|
600
|
+
application/json:
|
|
601
|
+
schema:
|
|
602
|
+
$ref: "#/components/schemas/Error"
|
|
603
|
+
text/plain:
|
|
604
|
+
schema:
|
|
605
|
+
type: string
|
|
606
|
+
"404":
|
|
607
|
+
description: no such container
|
|
608
|
+
content:
|
|
609
|
+
application/json:
|
|
610
|
+
schema:
|
|
611
|
+
$ref: "#/components/schemas/Error"
|
|
612
|
+
"500":
|
|
613
|
+
description: server error
|
|
614
|
+
content:
|
|
615
|
+
application/json:
|
|
616
|
+
schema:
|
|
617
|
+
$ref: "#/components/schemas/Error"
|
|
618
|
+
"501":
|
|
619
|
+
description: Emulates unsupported option or API version
|
|
620
|
+
content:
|
|
621
|
+
application/json:
|
|
622
|
+
schema:
|
|
623
|
+
$ref: "#/components/schemas/Error"
|
|
624
|
+
/containers/{id}/kill:
|
|
625
|
+
post:
|
|
626
|
+
operationId: ContainerKill
|
|
627
|
+
summary: Kill a container
|
|
628
|
+
x-emulates:
|
|
629
|
+
supported: true
|
|
630
|
+
parity:
|
|
631
|
+
enabled: false
|
|
632
|
+
safe: false
|
|
633
|
+
reason: Explicit completion controls and pending responses require deterministic
|
|
634
|
+
termination tests, not unbounded generated walks.
|
|
635
|
+
parameters:
|
|
636
|
+
- in: path
|
|
637
|
+
name: id
|
|
638
|
+
required: true
|
|
639
|
+
schema:
|
|
640
|
+
type: string
|
|
641
|
+
- in: query
|
|
642
|
+
name: signal
|
|
643
|
+
schema:
|
|
644
|
+
type: string
|
|
645
|
+
responses:
|
|
646
|
+
"204":
|
|
647
|
+
description: no error
|
|
648
|
+
"400":
|
|
649
|
+
description: Version rejected by Engine (below 1.24 uses plain text)
|
|
650
|
+
content:
|
|
651
|
+
application/json:
|
|
652
|
+
schema:
|
|
653
|
+
$ref: "#/components/schemas/Error"
|
|
654
|
+
text/plain:
|
|
655
|
+
schema:
|
|
656
|
+
type: string
|
|
657
|
+
"404":
|
|
658
|
+
description: no such container
|
|
659
|
+
content:
|
|
660
|
+
application/json:
|
|
661
|
+
schema:
|
|
662
|
+
$ref: "#/components/schemas/Error"
|
|
663
|
+
"409":
|
|
664
|
+
description: container is not running
|
|
665
|
+
content:
|
|
666
|
+
application/json:
|
|
667
|
+
schema:
|
|
668
|
+
$ref: "#/components/schemas/Error"
|
|
669
|
+
"500":
|
|
670
|
+
description: server error
|
|
671
|
+
content:
|
|
672
|
+
application/json:
|
|
673
|
+
schema:
|
|
674
|
+
$ref: "#/components/schemas/Error"
|
|
675
|
+
"501":
|
|
676
|
+
description: Emulates unsupported option or API version
|
|
677
|
+
content:
|
|
678
|
+
application/json:
|
|
679
|
+
schema:
|
|
680
|
+
$ref: "#/components/schemas/Error"
|
|
681
|
+
/containers/{id}/attach:
|
|
682
|
+
post:
|
|
683
|
+
operationId: ContainerAttach
|
|
684
|
+
summary: Attach to a container
|
|
685
|
+
x-emulates:
|
|
686
|
+
supported: false
|
|
687
|
+
reason: Unsupported through Fetch. The Node server supports non-TTY streaming
|
|
688
|
+
attach, verified by raw-wire tests and selected real Engine comparisons.
|
|
689
|
+
parity:
|
|
690
|
+
enabled: false
|
|
691
|
+
reason: Raw duplex HTTP upgrade cannot be represented by a Fetch response.
|
|
692
|
+
safe: false
|
|
693
|
+
parameters:
|
|
694
|
+
- in: path
|
|
695
|
+
name: id
|
|
696
|
+
required: true
|
|
697
|
+
schema:
|
|
698
|
+
type: string
|
|
699
|
+
responses:
|
|
700
|
+
"101":
|
|
701
|
+
description: no error, hints proxy about hijacking
|
|
702
|
+
"200":
|
|
703
|
+
description: no error, no upgrade header found
|
|
704
|
+
"400":
|
|
705
|
+
description: bad parameter
|
|
706
|
+
content:
|
|
707
|
+
application/json:
|
|
708
|
+
schema:
|
|
709
|
+
$ref: "#/components/schemas/Error"
|
|
710
|
+
"404":
|
|
711
|
+
description: no such container
|
|
712
|
+
content:
|
|
713
|
+
application/json:
|
|
714
|
+
schema:
|
|
715
|
+
$ref: "#/components/schemas/Error"
|
|
716
|
+
"500":
|
|
717
|
+
description: server error
|
|
718
|
+
content:
|
|
719
|
+
application/json:
|
|
720
|
+
schema:
|
|
721
|
+
$ref: "#/components/schemas/Error"
|
|
722
|
+
"501":
|
|
723
|
+
description: "Emulates Fetch transport: duplex attach is unsupported"
|
|
724
|
+
content:
|
|
725
|
+
application/json:
|
|
726
|
+
schema:
|
|
727
|
+
$ref: "#/components/schemas/Error"
|
|
728
|
+
/containers/{id}/wait:
|
|
729
|
+
post:
|
|
730
|
+
operationId: ContainerWait
|
|
731
|
+
summary: Wait for a container
|
|
732
|
+
x-emulates:
|
|
733
|
+
supported: true
|
|
734
|
+
parity:
|
|
735
|
+
enabled: false
|
|
736
|
+
safe: false
|
|
737
|
+
reason: Requires deterministic completion and cancellation; verified by
|
|
738
|
+
lifecycle tests instead of unbounded generated waits.
|
|
739
|
+
parameters:
|
|
740
|
+
- in: path
|
|
741
|
+
name: id
|
|
742
|
+
required: true
|
|
743
|
+
schema:
|
|
744
|
+
type: string
|
|
745
|
+
- in: query
|
|
746
|
+
name: condition
|
|
747
|
+
schema:
|
|
748
|
+
type: string
|
|
749
|
+
enum:
|
|
750
|
+
- ""
|
|
751
|
+
- not-running
|
|
752
|
+
- next-exit
|
|
753
|
+
- removed
|
|
754
|
+
default: not-running
|
|
755
|
+
responses:
|
|
756
|
+
"200":
|
|
757
|
+
description: Headers arrive immediately; the JSON body arrives when the wait
|
|
758
|
+
condition is met.
|
|
759
|
+
content:
|
|
760
|
+
application/json:
|
|
761
|
+
schema:
|
|
762
|
+
type: object
|
|
763
|
+
required:
|
|
764
|
+
- StatusCode
|
|
765
|
+
properties:
|
|
766
|
+
StatusCode:
|
|
767
|
+
type: integer
|
|
768
|
+
Error:
|
|
769
|
+
type: object
|
|
770
|
+
properties:
|
|
771
|
+
Message:
|
|
772
|
+
type: string
|
|
773
|
+
"400":
|
|
774
|
+
description: bad parameter
|
|
775
|
+
content:
|
|
776
|
+
application/json:
|
|
777
|
+
schema:
|
|
778
|
+
$ref: "#/components/schemas/Error"
|
|
779
|
+
"404":
|
|
780
|
+
description: no such container
|
|
781
|
+
content:
|
|
782
|
+
application/json:
|
|
783
|
+
schema:
|
|
784
|
+
$ref: "#/components/schemas/Error"
|
|
785
|
+
"500":
|
|
786
|
+
description: server error
|
|
787
|
+
content:
|
|
788
|
+
application/json:
|
|
789
|
+
schema:
|
|
790
|
+
$ref: "#/components/schemas/Error"
|
|
791
|
+
"501":
|
|
792
|
+
description: Emulates unsupported option or API version
|
|
793
|
+
content:
|
|
794
|
+
application/json:
|
|
795
|
+
schema:
|
|
796
|
+
$ref: "#/components/schemas/Error"
|
|
797
|
+
/containers/{id}:
|
|
798
|
+
delete:
|
|
799
|
+
operationId: ContainerDelete
|
|
800
|
+
summary: Remove a container
|
|
801
|
+
x-emulates:
|
|
802
|
+
supported: true
|
|
803
|
+
parity:
|
|
804
|
+
enabled: false
|
|
805
|
+
safe: false
|
|
806
|
+
reason: Explicit completion controls and pending responses require deterministic
|
|
807
|
+
termination tests, not unbounded generated walks.
|
|
808
|
+
parameters:
|
|
809
|
+
- in: path
|
|
810
|
+
name: id
|
|
811
|
+
required: true
|
|
812
|
+
schema:
|
|
813
|
+
type: string
|
|
814
|
+
- in: query
|
|
815
|
+
name: force
|
|
816
|
+
schema:
|
|
817
|
+
type: boolean
|
|
818
|
+
default: false
|
|
819
|
+
- in: query
|
|
820
|
+
name: v
|
|
821
|
+
schema:
|
|
822
|
+
type: boolean
|
|
823
|
+
default: false
|
|
824
|
+
- in: query
|
|
825
|
+
name: link
|
|
826
|
+
schema:
|
|
827
|
+
type: boolean
|
|
828
|
+
default: false
|
|
829
|
+
responses:
|
|
830
|
+
"204":
|
|
831
|
+
description: no error
|
|
832
|
+
"400":
|
|
833
|
+
description: bad parameter
|
|
834
|
+
content:
|
|
835
|
+
application/json:
|
|
836
|
+
schema:
|
|
837
|
+
$ref: "#/components/schemas/Error"
|
|
838
|
+
"404":
|
|
839
|
+
description: no such container
|
|
840
|
+
content:
|
|
841
|
+
application/json:
|
|
842
|
+
schema:
|
|
843
|
+
$ref: "#/components/schemas/Error"
|
|
844
|
+
"409":
|
|
845
|
+
description: conflict
|
|
846
|
+
content:
|
|
847
|
+
application/json:
|
|
848
|
+
schema:
|
|
849
|
+
$ref: "#/components/schemas/Error"
|
|
850
|
+
"500":
|
|
851
|
+
description: server error
|
|
852
|
+
content:
|
|
853
|
+
application/json:
|
|
854
|
+
schema:
|
|
855
|
+
$ref: "#/components/schemas/Error"
|
|
856
|
+
"501":
|
|
857
|
+
description: Emulates unsupported option or API version
|
|
858
|
+
content:
|
|
859
|
+
application/json:
|
|
860
|
+
schema:
|
|
861
|
+
$ref: "#/components/schemas/Error"
|
|
862
|
+
/info:
|
|
863
|
+
get:
|
|
864
|
+
operationId: SystemInfo
|
|
865
|
+
summary: Get system information
|
|
866
|
+
x-emulates:
|
|
867
|
+
supported: true
|
|
868
|
+
parity:
|
|
869
|
+
enabled: true
|
|
870
|
+
safe: true
|
|
871
|
+
responses:
|
|
872
|
+
"200":
|
|
873
|
+
description: No error
|
|
874
|
+
content:
|
|
875
|
+
application/json:
|
|
876
|
+
schema:
|
|
877
|
+
type: object
|
|
878
|
+
properties:
|
|
879
|
+
ID:
|
|
880
|
+
type: string
|
|
881
|
+
Name:
|
|
882
|
+
type: string
|
|
883
|
+
ServerVersion:
|
|
884
|
+
type: string
|
|
885
|
+
Containers:
|
|
886
|
+
type: integer
|
|
887
|
+
ContainersRunning:
|
|
888
|
+
type: integer
|
|
889
|
+
ContainersPaused:
|
|
890
|
+
type: integer
|
|
891
|
+
ContainersStopped:
|
|
892
|
+
type: integer
|
|
893
|
+
Images:
|
|
894
|
+
type: integer
|
|
895
|
+
Driver:
|
|
896
|
+
type: string
|
|
897
|
+
OSType:
|
|
898
|
+
type: string
|
|
899
|
+
Architecture:
|
|
900
|
+
type: string
|
|
901
|
+
OperatingSystem:
|
|
902
|
+
type: string
|
|
903
|
+
KernelVersion:
|
|
904
|
+
type: string
|
|
905
|
+
DockerRootDir:
|
|
906
|
+
type: string
|
|
907
|
+
SecurityOptions:
|
|
908
|
+
type: array
|
|
909
|
+
items:
|
|
910
|
+
type: string
|
|
911
|
+
SystemTime:
|
|
912
|
+
type: string
|
|
913
|
+
x-emulates-volatile:
|
|
914
|
+
kind: timestamp
|
|
915
|
+
NCPU:
|
|
916
|
+
type: integer
|
|
917
|
+
MemTotal:
|
|
918
|
+
type: integer
|
|
919
|
+
Labels:
|
|
920
|
+
type: array
|
|
921
|
+
items:
|
|
922
|
+
type: string
|
|
923
|
+
Warnings:
|
|
924
|
+
type: array
|
|
925
|
+
items:
|
|
926
|
+
type: string
|
|
927
|
+
required:
|
|
928
|
+
- ID
|
|
929
|
+
- Name
|
|
930
|
+
- ServerVersion
|
|
931
|
+
- Containers
|
|
932
|
+
- ContainersRunning
|
|
933
|
+
- ContainersPaused
|
|
934
|
+
- ContainersStopped
|
|
935
|
+
- Images
|
|
936
|
+
- Driver
|
|
937
|
+
- OSType
|
|
938
|
+
- Architecture
|
|
939
|
+
- OperatingSystem
|
|
940
|
+
- KernelVersion
|
|
941
|
+
- DockerRootDir
|
|
942
|
+
- SecurityOptions
|
|
943
|
+
- SystemTime
|
|
944
|
+
- NCPU
|
|
945
|
+
- MemTotal
|
|
946
|
+
- Labels
|
|
947
|
+
- Warnings
|
|
948
|
+
"400":
|
|
949
|
+
description: Version rejected by Engine (below 1.24 uses plain text)
|
|
950
|
+
content:
|
|
951
|
+
application/json:
|
|
952
|
+
schema:
|
|
953
|
+
$ref: "#/components/schemas/Error"
|
|
954
|
+
text/plain:
|
|
955
|
+
schema:
|
|
956
|
+
type: string
|
|
957
|
+
"500":
|
|
958
|
+
description: Server error
|
|
959
|
+
content:
|
|
960
|
+
application/json:
|
|
961
|
+
schema:
|
|
962
|
+
$ref: "#/components/schemas/Error"
|
|
963
|
+
"501":
|
|
964
|
+
description: Emulates unsupported API version or filter feature
|
|
965
|
+
content:
|
|
966
|
+
application/json:
|
|
967
|
+
schema:
|
|
968
|
+
$ref: "#/components/schemas/Error"
|
|
969
|
+
parameters: []
|
|
970
|
+
/version:
|
|
971
|
+
get:
|
|
972
|
+
operationId: SystemVersion
|
|
973
|
+
summary: Get version
|
|
974
|
+
x-emulates:
|
|
975
|
+
supported: true
|
|
976
|
+
parity:
|
|
977
|
+
enabled: true
|
|
978
|
+
safe: true
|
|
979
|
+
responses:
|
|
980
|
+
"200":
|
|
981
|
+
description: no error
|
|
982
|
+
content:
|
|
983
|
+
application/json:
|
|
984
|
+
schema:
|
|
985
|
+
type: object
|
|
986
|
+
properties:
|
|
987
|
+
Version:
|
|
988
|
+
type: string
|
|
989
|
+
ApiVersion:
|
|
990
|
+
type: string
|
|
991
|
+
MinAPIVersion:
|
|
992
|
+
type: string
|
|
993
|
+
GitCommit:
|
|
994
|
+
type: string
|
|
995
|
+
GoVersion:
|
|
996
|
+
type: string
|
|
997
|
+
Os:
|
|
998
|
+
type: string
|
|
999
|
+
Arch:
|
|
1000
|
+
type: string
|
|
1001
|
+
KernelVersion:
|
|
1002
|
+
type: string
|
|
1003
|
+
BuildTime:
|
|
1004
|
+
type: string
|
|
1005
|
+
Experimental:
|
|
1006
|
+
type: boolean
|
|
1007
|
+
Platform:
|
|
1008
|
+
type: object
|
|
1009
|
+
properties:
|
|
1010
|
+
Name:
|
|
1011
|
+
type: string
|
|
1012
|
+
required:
|
|
1013
|
+
- Name
|
|
1014
|
+
Components:
|
|
1015
|
+
type: array
|
|
1016
|
+
items:
|
|
1017
|
+
type: object
|
|
1018
|
+
properties:
|
|
1019
|
+
Name:
|
|
1020
|
+
type: string
|
|
1021
|
+
Version:
|
|
1022
|
+
type: string
|
|
1023
|
+
Details:
|
|
1024
|
+
type: object
|
|
1025
|
+
required:
|
|
1026
|
+
- Name
|
|
1027
|
+
- Version
|
|
1028
|
+
- Details
|
|
1029
|
+
required:
|
|
1030
|
+
- Version
|
|
1031
|
+
- ApiVersion
|
|
1032
|
+
- MinAPIVersion
|
|
1033
|
+
- GitCommit
|
|
1034
|
+
- GoVersion
|
|
1035
|
+
- Os
|
|
1036
|
+
- Arch
|
|
1037
|
+
- KernelVersion
|
|
1038
|
+
- BuildTime
|
|
1039
|
+
- Experimental
|
|
1040
|
+
- Platform
|
|
1041
|
+
- Components
|
|
1042
|
+
"400":
|
|
1043
|
+
description: Version rejected by Engine (below 1.24 uses plain text)
|
|
1044
|
+
content:
|
|
1045
|
+
application/json:
|
|
1046
|
+
schema:
|
|
1047
|
+
$ref: "#/components/schemas/Error"
|
|
1048
|
+
text/plain:
|
|
1049
|
+
schema:
|
|
1050
|
+
type: string
|
|
1051
|
+
"500":
|
|
1052
|
+
description: server error
|
|
1053
|
+
content:
|
|
1054
|
+
application/json:
|
|
1055
|
+
schema:
|
|
1056
|
+
$ref: "#/components/schemas/Error"
|
|
1057
|
+
"501":
|
|
1058
|
+
description: Emulates unsupported API version or filter feature
|
|
1059
|
+
content:
|
|
1060
|
+
application/json:
|
|
1061
|
+
schema:
|
|
1062
|
+
$ref: "#/components/schemas/Error"
|
|
1063
|
+
parameters: []
|
|
1064
|
+
/_ping:
|
|
1065
|
+
get:
|
|
1066
|
+
operationId: SystemPing
|
|
1067
|
+
summary: Ping
|
|
1068
|
+
x-emulates:
|
|
1069
|
+
supported: true
|
|
1070
|
+
parity:
|
|
1071
|
+
enabled: true
|
|
1072
|
+
safe: true
|
|
1073
|
+
responses:
|
|
1074
|
+
"200":
|
|
1075
|
+
description: no error
|
|
1076
|
+
headers:
|
|
1077
|
+
API-Version:
|
|
1078
|
+
schema:
|
|
1079
|
+
type: string
|
|
1080
|
+
const: "1.52"
|
|
1081
|
+
Docker-Experimental:
|
|
1082
|
+
schema:
|
|
1083
|
+
type: string
|
|
1084
|
+
const: "false"
|
|
1085
|
+
Builder-Version:
|
|
1086
|
+
schema:
|
|
1087
|
+
type: string
|
|
1088
|
+
const: "2"
|
|
1089
|
+
Swarm:
|
|
1090
|
+
schema:
|
|
1091
|
+
type: string
|
|
1092
|
+
const: inactive
|
|
1093
|
+
Cache-Control:
|
|
1094
|
+
schema:
|
|
1095
|
+
type: string
|
|
1096
|
+
Pragma:
|
|
1097
|
+
schema:
|
|
1098
|
+
type: string
|
|
1099
|
+
content:
|
|
1100
|
+
text/plain:
|
|
1101
|
+
schema:
|
|
1102
|
+
type: string
|
|
1103
|
+
const: OK
|
|
1104
|
+
"400":
|
|
1105
|
+
description: Version rejected by Engine (below 1.24 uses plain text)
|
|
1106
|
+
content:
|
|
1107
|
+
application/json:
|
|
1108
|
+
schema:
|
|
1109
|
+
$ref: "#/components/schemas/Error"
|
|
1110
|
+
text/plain:
|
|
1111
|
+
schema:
|
|
1112
|
+
type: string
|
|
1113
|
+
"500":
|
|
1114
|
+
description: server error
|
|
1115
|
+
content:
|
|
1116
|
+
application/json:
|
|
1117
|
+
schema:
|
|
1118
|
+
$ref: "#/components/schemas/Error"
|
|
1119
|
+
"501":
|
|
1120
|
+
description: Emulates unsupported API version
|
|
1121
|
+
content:
|
|
1122
|
+
application/json:
|
|
1123
|
+
schema:
|
|
1124
|
+
$ref: "#/components/schemas/Error"
|
|
1125
|
+
head:
|
|
1126
|
+
operationId: SystemPingHead
|
|
1127
|
+
summary: Ping
|
|
1128
|
+
x-emulates:
|
|
1129
|
+
supported: true
|
|
1130
|
+
parity:
|
|
1131
|
+
enabled: true
|
|
1132
|
+
safe: true
|
|
1133
|
+
responses:
|
|
1134
|
+
"200":
|
|
1135
|
+
description: no error
|
|
1136
|
+
headers:
|
|
1137
|
+
API-Version:
|
|
1138
|
+
schema:
|
|
1139
|
+
type: string
|
|
1140
|
+
const: "1.52"
|
|
1141
|
+
Docker-Experimental:
|
|
1142
|
+
schema:
|
|
1143
|
+
type: string
|
|
1144
|
+
const: "false"
|
|
1145
|
+
Builder-Version:
|
|
1146
|
+
schema:
|
|
1147
|
+
type: string
|
|
1148
|
+
const: "2"
|
|
1149
|
+
Swarm:
|
|
1150
|
+
schema:
|
|
1151
|
+
type: string
|
|
1152
|
+
const: inactive
|
|
1153
|
+
Cache-Control:
|
|
1154
|
+
schema:
|
|
1155
|
+
type: string
|
|
1156
|
+
Pragma:
|
|
1157
|
+
schema:
|
|
1158
|
+
type: string
|
|
1159
|
+
"400":
|
|
1160
|
+
description: Version rejected by Engine (below 1.24 uses plain text)
|
|
1161
|
+
content:
|
|
1162
|
+
application/json:
|
|
1163
|
+
schema:
|
|
1164
|
+
$ref: "#/components/schemas/Error"
|
|
1165
|
+
text/plain:
|
|
1166
|
+
schema:
|
|
1167
|
+
type: string
|
|
1168
|
+
"500":
|
|
1169
|
+
description: server error
|
|
1170
|
+
content:
|
|
1171
|
+
application/json:
|
|
1172
|
+
schema:
|
|
1173
|
+
$ref: "#/components/schemas/Error"
|
|
1174
|
+
"501":
|
|
1175
|
+
description: Emulates unsupported API version
|
|
1176
|
+
content:
|
|
1177
|
+
application/json:
|
|
1178
|
+
schema:
|
|
1179
|
+
$ref: "#/components/schemas/Error"
|
|
1180
|
+
components:
|
|
1181
|
+
schemas:
|
|
1182
|
+
Error:
|
|
1183
|
+
type: object
|
|
1184
|
+
required:
|
|
1185
|
+
- message
|
|
1186
|
+
properties:
|
|
1187
|
+
message:
|
|
1188
|
+
type: string
|