Audit one Docker Compose file and resolve its internal references
Audit one Docker Compose file and resolve its internal references. Reports two services publishing the same host port, where only one can bind; a named volume or network mounted and never declared; a dependency on a service this file does not define; a depends_on with no condition, so Compose waits for the container to start rather than for the service to be ready; and a wait for a service with no healthcheck, which can never be satisfied.
Answeringour last check, 2026-10-04
1 of 1checks answered this week
4468 msmedian answer time
$0.15listed price per call
$0.15price it asked us
Paid test badge: not yet. The checks above are free: we call the tool without paying and read the payment request it sends back. The Verified badge needs paid calls whose answers match the promised output, and nobody can buy a badge.
Endpoint
POST https://api.zfinia.com/x402/v1/docker-compose-contract-audit
| Category | Code and developer |
|---|---|
| Provider host | api.zfinia.com |
| Networks | eip155:8453 |
| Payment schemes | exact |
| Self-reported calls, 30 days | 1 from 1 payers (the provider's figure, not ours) |
Our checks, last 30 days
| Day | Result | HTTP | Asked | Time |
|---|---|---|---|---|
| 2026-10-04 | valid payment request | 402 | $0.15 | 4468 ms |
Example input (from the provider)
{
"body": {
"compose": "services:\n api:\n image: ghcr.io/example/api:latest\n ports:\n - \"8080:8080\"\n volumes:\n - cache:/var/cache\n depends_on:\n db:\n condition: service_healthy\n environment:\n MODE: production\n LOG_LEVEL: debug\n worker:\n image: ghcr.io/example/worker:1.4.0\n ports:\n - published: 8080\n target: 9000\n environment:\n - SECRET_KEY\n - MODE=production\n db:\n image: postgres:16\n volumes:\n - /var/lib/postgresql/data:/var/lib/postgresql/data\n",
"environment_names": [
"MODE",
"DATABASE_URL"
]
},
"bodyType": "json",
"method": "POST",
"type": "http"
}
Promised output schema (from the provider)
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"input": {
"additionalProperties": false,
"properties": {
"body": {
"additionalProperties": false,
"properties": {
"compose": {
"maxLength": 262144,
"type": "string"
},
"environment_names": {
"items": {
"maxLength": 256,
"type": "string"
},
"maxItems": 500,
"minItems": 1,
"type": "array"
}
},
"required": [
"compose"
],
"type": "object"
},
"bodyType": {
"enum": [
"json",
"form-data",
"text"
],
"type": "string"
},
"method": {
"enum": [
"POST"
],
"type": "string"
},
"type": {
"const": "http",
"type": "string"
}
},
"required": [
"type",
"method",
"bodyType",
"body"
],
"type": "object"
},
"output": {
"properties": {
"example": {
"type": "object"
},
"type": {
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
}
},
"required": [
"input"
],
"type": "object"
}