all-in-one/php/containers-schema.json

111 lines
2 KiB
JSON
Raw Normal View History

{
"type": "object",
"description": "AIO containers definition schema",
"minProperties": 1,
"required": ["aio_services_v1"],
"properties": {
"aio_services_v1": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"minProperties": 2,
"required": ["image", "container_name"],
"properties": {
"image": {
"type": "string"
},
"expose": {
"type": "array",
"items": {
"type": "string"
}
},
"cap_add": {
"type": "array",
"items": {
"type": "string"
}
},
"depends_on": {
"type": "array",
"items": {
"type": "string"
}
},
"display_name": {
"type": "string"
},
"environment": {
"type": "array",
"items": {
"type": "string"
}
},
"container_name": {
"type": "string"
},
"internal_port": {
"type": "string"
},
"stop_grace_period": {
"type": "integer"
},
"ports": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"minProperties": 3,
"properties": {
"ip_binding": {
"type": "string"
},
"port_number": {
"type": "string"
},
"protocol": {
"type": "string"
}
}
}
},
"restart": {
"type": "string"
},
"secrets": {
"type": "array",
"items": {
"type": "string"
}
},
"devices": {
"type": "array",
"items": {
"type": "string"
}
},
"volumes": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"minProperties": 3,
"properties": {
"destination": {
"type": "string"
},
"source": {
"type": "string"
},
"writeable": {
"type": "boolean"
}
}
}
}
}
}
}
}
}