{
    "definitions": {
        "from": {
            "properties": {
                "alias": {
                    "type": "string"
                },
                "baseImage": {
                    "type": "string"
                }
            },
            "required": [
                "baseImage"
            ],
            "type": "object"
        },
        "labels": {
            "oneOf": [
                {
                    "additionalProperties": false,
                    "patternProperties": {
                        ".+": {
                            "type": "string"
                        }
                    },
                    "type": "object"
                },
                {
                    "items": {
                        "type": "string"
                    },
                    "type": "array",
                    "_uniqueItems": true
                }
            ]
        },
        "list_or_dict": {
            "oneOf": [
                {
                    "additionalProperties": false,
                    "patternProperties": {
                        ".+": {
                            "type": [
                                "string",
                                "number",
                                "null"
                            ]
                        }
                    },
                    "type": "object"
                },
                {
                    "items": {
                        "type": "string"
                    },
                    "type": "array",
                    "_uniqueItems": true
                }
            ]
        }
    },
    "patternProperties": {
        "^from": {
            "$ref": "#/definitions/from"
        }
    },
    "properties": {
        "#": {
            "description": "File comment.",
            "type": "string"
        },
        "add": {
            "oneOf": [
                {
                    "items": {
                        "type": "string"
                    },
                    "type": "array"
                },
                {
                    "type": "object"
                }
            ]
        },
        "args": {
            "$ref": "#/definitions/list_or_dict"
        },
        "cmd": {
            "oneOf": [
                {
                    "type": "string"
                },
                {
                    "items": {
                        "type": "string"
                    },
                    "type": "array"
                }
            ]
        },
        "comment": {
            "type": "string"
        },
        "copy": {
            "oneOf": [
                {
                    "items": {
                        "type": "string"
                    },
                    "type": "array"
                },
                {
                    "type": "object"
                }
            ]
        },
        "entrypoint": {
            "oneOf": [
                {
                    "type": "string"
                },
                {
                    "items": {
                        "type": "string"
                    },
                    "type": "array"
                }
            ]
        },
        "env": {
            "$ref": "#/definitions/list_or_dict"
        },
        "expose": {
            "items": {
                "format": "expose",
                "type": [
                    "string",
                    "number"
                ]
            },
            "type": "array",
            "_uniqueItems": true
        },
        "labels": {
            "$ref": "#/definitions/labels"
        },
        "run": {
            "oneOf": [
                {
                    "type": "string"
                },
                {
                    "items": {
                        "type": "string"
                    },
                    "type": "array"
                }
            ]
        },
        "shell": {
            "items": {
                "type": "string"
            },
            "type": "array"
        },
        "stopsignal": {
            "type": "string"
        },
        "user": {
            "type": "string"
        },
        "volumes": {
            "items": {
                "type": "string"
            },
            "type": "array",
            "_uniqueItems": true
        },
        "working_dir": {
            "type": "string"
        }
    },
    "required": [
        "from"
    ],
    "type": "object"
}