{
  "builder": {
    "id": ""
  },
  "buildType": "https://mobyproject.org/buildkit@v1",
  "materials": [
    {
      "uri": "pkg:docker/eclipse-temurin@25-jre?platform=linux%2Famd64",
      "digest": {
        "sha256": "04262e8782d6b034ee5d7c1c5d4e8938fcf2063a76b4bfcd84e5d994d09c27bc"
      }
    },
    {
      "uri": "pkg:docker/maven@3.9.12-eclipse-temurin-25?platform=linux%2Famd64",
      "digest": {
        "sha256": "4f82a03a7d6679281952d628131299b1be88d7030a49c6a2b7d2ba2642e44e3e"
      }
    }
  ],
  "invocation": {
    "configSource": {},
    "parameters": {
      "frontend": "dockerfile.v0",
      "args": {
        "label:com.docker.compose.project": "deploy",
        "label:com.docker.compose.service": "backend",
        "label:com.docker.compose.version": "2.20.2"
      },
      "locals": [
        {
          "name": "context"
        },
        {
          "name": "dockerfile"
        }
      ]
    },
    "environment": {
      "platform": "linux/amd64"
    }
  },
  "buildConfig": {
    "llbDefinition": [
      {
        "id": "step0",
        "op": {
          "Op": {
            "source": {
              "identifier": "docker-image://docker.io/library/eclipse-temurin:25-jre@sha256:04262e8782d6b034ee5d7c1c5d4e8938fcf2063a76b4bfcd84e5d994d09c27bc"
            }
          },
          "platform": {
            "Architecture": "amd64",
            "OS": "linux"
          },
          "constraints": {}
        }
      },
      {
        "id": "step1",
        "op": {
          "Op": {
            "file": {
              "actions": [
                {
                  "input": 0,
                  "secondaryInput": -1,
                  "output": 0,
                  "Action": {
                    "mkdir": {
                      "path": "/app",
                      "mode": 493,
                      "makeParents": true,
                      "timestamp": -1
                    }
                  }
                }
              ]
            }
          },
          "platform": {
            "Architecture": "amd64",
            "OS": "linux"
          },
          "constraints": {}
        },
        "inputs": [
          "step0:0"
        ]
      },
      {
        "id": "step2",
        "op": {
          "Op": {
            "source": {
              "identifier": "docker-image://docker.io/library/maven:3.9.12-eclipse-temurin-25@sha256:4f82a03a7d6679281952d628131299b1be88d7030a49c6a2b7d2ba2642e44e3e"
            }
          },
          "platform": {
            "Architecture": "amd64",
            "OS": "linux"
          },
          "constraints": {}
        }
      },
      {
        "id": "step3",
        "op": {
          "Op": {
            "file": {
              "actions": [
                {
                  "input": 0,
                  "secondaryInput": -1,
                  "output": 0,
                  "Action": {
                    "mkdir": {
                      "path": "/workspace",
                      "mode": 493,
                      "makeParents": true,
                      "timestamp": -1
                    }
                  }
                }
              ]
            }
          },
          "platform": {
            "Architecture": "amd64",
            "OS": "linux"
          },
          "constraints": {}
        },
        "inputs": [
          "step2:0"
        ]
      },
      {
        "id": "step4",
        "op": {
          "Op": {
            "source": {
              "identifier": "local://context",
              "attrs": {
                "local.followpaths": "[\"pom.xml\",\"src\"]",
                "local.sharedkeyhint": "context"
              }
            }
          },
          "constraints": {}
        }
      },
      {
        "id": "step5",
        "op": {
          "Op": {
            "file": {
              "actions": [
                {
                  "input": 0,
                  "secondaryInput": 1,
                  "output": 0,
                  "Action": {
                    "copy": {
                      "src": "/pom.xml",
                      "dest": "/workspace/",
                      "mode": -1,
                      "followSymlink": true,
                      "dirCopyContents": true,
                      "createDestPath": true,
                      "allowWildcard": true,
                      "allowEmptyWildcard": true,
                      "timestamp": -1
                    }
                  }
                }
              ]
            }
          },
          "platform": {
            "Architecture": "amd64",
            "OS": "linux"
          },
          "constraints": {}
        },
        "inputs": [
          "step3:0",
          "step4:0"
        ]
      },
      {
        "id": "step6",
        "op": {
          "Op": {
            "file": {
              "actions": [
                {
                  "input": 0,
                  "secondaryInput": 1,
                  "output": 0,
                  "Action": {
                    "copy": {
                      "src": "/src",
                      "dest": "/workspace/src",
                      "mode": -1,
                      "followSymlink": true,
                      "dirCopyContents": true,
                      "createDestPath": true,
                      "allowWildcard": true,
                      "allowEmptyWildcard": true,
                      "timestamp": -1
                    }
                  }
                }
              ]
            }
          },
          "platform": {
            "Architecture": "amd64",
            "OS": "linux"
          },
          "constraints": {}
        },
        "inputs": [
          "step5:0",
          "step4:0"
        ]
      },
      {
        "id": "step7",
        "op": {
          "Op": {
            "exec": {
              "meta": {
                "args": [
                  "/bin/sh",
                  "-c",
                  "mvn -q -DskipTests package"
                ],
                "env": [
                  "PATH=/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                  "JAVA_HOME=/opt/java/openjdk",
                  "LANG=en_US.UTF-8",
                  "LANGUAGE=en_US:en",
                  "LC_ALL=en_US.UTF-8",
                  "JAVA_VERSION=jdk-25.0.2+10",
                  "MAVEN_HOME=/usr/share/maven",
                  "MAVEN_CONFIG=/root/.m2"
                ],
                "cwd": "/workspace",
                "removeMountStubsRecursive": true
              },
              "mounts": [
                {
                  "input": 0,
                  "dest": "/",
                  "output": 0
                }
              ]
            }
          },
          "platform": {
            "Architecture": "amd64",
            "OS": "linux"
          },
          "constraints": {}
        },
        "inputs": [
          "step6:0"
        ]
      },
      {
        "id": "step8",
        "op": {
          "Op": {
            "file": {
              "actions": [
                {
                  "input": 0,
                  "secondaryInput": 1,
                  "output": 0,
                  "Action": {
                    "copy": {
                      "src": "/workspace/target/ocr-platform-backend-0.1.0-SNAPSHOT.jar",
                      "dest": "/app/ocr-platform-backend.jar",
                      "mode": -1,
                      "followSymlink": true,
                      "dirCopyContents": true,
                      "createDestPath": true,
                      "allowWildcard": true,
                      "allowEmptyWildcard": true,
                      "timestamp": -1
                    }
                  }
                }
              ]
            }
          },
          "platform": {
            "Architecture": "amd64",
            "OS": "linux"
          },
          "constraints": {}
        },
        "inputs": [
          "step1:0",
          "step7:0"
        ]
      },
      {
        "id": "step9",
        "op": {
          "Op": null
        },
        "inputs": [
          "step8:0"
        ]
      }
    ],
    "digestMapping": {
      "sha256:150399f649e3c7f0a9f17dd25b0de9310fe936872b7f51fb5fb9fab42dd25569": "step0",
      "sha256:2be9ca7d9a2b52121105ecf7bd9f2fc4079ad09858e319d5b5664d6e1ec24a61": "step7",
      "sha256:9311dad55670caaab78b2cc6d22e0baca6a7e13fc078e62efed87fdf843ecd4e": "step4",
      "sha256:b11d799be52699f47395d3bc84af73fcab45358c395d41758d3e3b7dad9fb64a": "step8",
      "sha256:b9334e2681468efb7e9cd3b10a5afd57c412363907ae59fc75523df69df6848a": "step5",
      "sha256:bfad8418dff3bc7c1662cb916f264e3e06356cd78d595f6ab43979be81a48112": "step1",
      "sha256:c2caef42c36a9866e3ea0297ecda2688d320d92bf8e6ffb0c47e269bbc283456": "step2",
      "sha256:c359e1445ee87c38ff3e1fbc220f67960a7623ea5b28ef09182634c4053cc46a": "step3",
      "sha256:db0512d774bb0e72ae0ca481d863e391b7632568a18bd65c3503e52edea62c03": "step6",
      "sha256:fa3e28adff5b2f36e20a89d869f792a9514ce4b6da1dfcf86feb4f3f82d5bd83": "step9"
    }
  },
  "metadata": {
    "buildInvocationID": "gyrg3q1wvw78v2gwb1wk7ngzd",
    "buildStartedOn": "2026-05-13T11:27:30.483618581+08:00",
    "buildFinishedOn": "2026-05-13T11:27:35.229544557+08:00",
    "completeness": {
      "parameters": true,
      "environment": true,
      "materials": false
    },
    "reproducible": false,
    "https://mobyproject.org/buildkit@v1#metadata": {
      "source": {
        "locations": {
          "step0": {
            "locations": [
              {
                "ranges": [
                  {
                    "start": {
                      "line": 7
                    },
                    "end": {
                      "line": 7
                    }
                  }
                ]
              }
            ]
          },
          "step1": {
            "locations": [
              {
                "ranges": [
                  {
                    "start": {
                      "line": 8
                    },
                    "end": {
                      "line": 8
                    }
                  }
                ]
              }
            ]
          },
          "step2": {
            "locations": [
              {
                "ranges": [
                  {
                    "start": {
                      "line": 1
                    },
                    "end": {
                      "line": 1
                    }
                  }
                ]
              }
            ]
          },
          "step3": {
            "locations": [
              {
                "ranges": [
                  {
                    "start": {
                      "line": 2
                    },
                    "end": {
                      "line": 2
                    }
                  }
                ]
              }
            ]
          },
          "step4": {},
          "step5": {
            "locations": [
              {
                "ranges": [
                  {
                    "start": {
                      "line": 3
                    },
                    "end": {
                      "line": 3
                    }
                  }
                ]
              }
            ]
          },
          "step6": {
            "locations": [
              {
                "ranges": [
                  {
                    "start": {
                      "line": 4
                    },
                    "end": {
                      "line": 4
                    }
                  }
                ]
              }
            ]
          },
          "step7": {
            "locations": [
              {
                "ranges": [
                  {
                    "start": {
                      "line": 5
                    },
                    "end": {
                      "line": 5
                    }
                  }
                ]
              }
            ]
          },
          "step8": {
            "locations": [
              {
                "ranges": [
                  {
                    "start": {
                      "line": 9
                    },
                    "end": {
                      "line": 9
                    }
                  }
                ]
              }
            ]
          }
        },
        "infos": [
          {
            "filename": "Dockerfile",
            "data": "RlJPTSBtYXZlbjozLjkuMTItZWNsaXBzZS10ZW11cmluLTI1IEFTIGJ1aWxkCldPUktESVIgL3dvcmtzcGFjZQpDT1BZIHBvbS54bWwgLgpDT1BZIHNyYyAuL3NyYwpSVU4gbXZuIC1xIC1Ec2tpcFRlc3RzIHBhY2thZ2UKCkZST00gZWNsaXBzZS10ZW11cmluOjI1LWpyZQpXT1JLRElSIC9hcHAKQ09QWSAtLWZyb209YnVpbGQgL3dvcmtzcGFjZS90YXJnZXQvb2NyLXBsYXRmb3JtLWJhY2tlbmQtMC4xLjAtU05BUFNIT1QuamFyIC9hcHAvb2NyLXBsYXRmb3JtLWJhY2tlbmQuamFyCkVYUE9TRSAxODA5MApFTlRSWVBPSU5UIFsiamF2YSIsICItamFyIiwgIi9hcHAvb2NyLXBsYXRmb3JtLWJhY2tlbmQuamFyIl0KCg==",
            "llbDefinition": [
              {
                "id": "step0",
                "op": {
                  "Op": {
                    "source": {
                      "identifier": "local://dockerfile",
                      "attrs": {
                        "local.differ": "none",
                        "local.followpaths": "[\"Dockerfile\",\"Dockerfile.dockerignore\",\"dockerfile\"]",
                        "local.sharedkeyhint": "dockerfile"
                      }
                    }
                  },
                  "constraints": {}
                }
              },
              {
                "id": "step1",
                "op": {
                  "Op": null
                },
                "inputs": [
                  "step0:0"
                ]
              }
            ],
            "digestMapping": {
              "sha256:1bf3b35b58b3c21bbc919316ce72d0f31f2fea7c1ef37c4ab10805a4c34e57bf": "step0",
              "sha256:94266a5112bf73beef57fc1d02b4c789d22be7134c333ffa21a1c4d64105e4a4": "step1"
            }
          }
        ]
      },
      "layers": {
        "step0:0": [
          [
            {
              "mediaType": "application/vnd.docker.image.rootfs.diff.tar",
              "digest": "sha256:0c3db79307ab91dad11fad2b136a2b56df6efeeb567c4c99e6e316b63885c9f6",
              "size": -1
            },
            {
              "mediaType": "application/vnd.docker.image.rootfs.diff.tar",
              "digest": "sha256:f421a7e99ead34566fcb11403f6f38675b53035f39937394893eaf7d87c39f83",
              "size": -1
            },
            {
              "mediaType": "application/vnd.docker.image.rootfs.diff.tar",
              "digest": "sha256:e280c6d15855f771612e1a2b87b4017044c5b0a25b494bbd3650ff99821f5334",
              "size": -1
            },
            {
              "mediaType": "application/vnd.docker.image.rootfs.diff.tar",
              "digest": "sha256:686138d9e74281d31c5183128c0c32205f175148f993052cf2851229f81bb775",
              "size": -1
            },
            {
              "mediaType": "application/vnd.docker.image.rootfs.diff.tar",
              "digest": "sha256:5f70bf18a086007016e948b04aed3b82103a36bea41755b6cddfaf10ace3c6ef",
              "size": -1
            },
            {
              "mediaType": "application/vnd.docker.image.rootfs.diff.tar",
              "digest": "sha256:78ee28fdc7b79c0b6ab856b0507461a1481dd11c493be7dd9732b0f69a1eb34f",
              "size": -1
            }
          ]
        ],
        "step1:0": [
          [
            {
              "mediaType": "application/vnd.docker.image.rootfs.diff.tar",
              "digest": "sha256:0c3db79307ab91dad11fad2b136a2b56df6efeeb567c4c99e6e316b63885c9f6",
              "size": -1
            },
            {
              "mediaType": "application/vnd.docker.image.rootfs.diff.tar",
              "digest": "sha256:f421a7e99ead34566fcb11403f6f38675b53035f39937394893eaf7d87c39f83",
              "size": -1
            },
            {
              "mediaType": "application/vnd.docker.image.rootfs.diff.tar",
              "digest": "sha256:e280c6d15855f771612e1a2b87b4017044c5b0a25b494bbd3650ff99821f5334",
              "size": -1
            },
            {
              "mediaType": "application/vnd.docker.image.rootfs.diff.tar",
              "digest": "sha256:686138d9e74281d31c5183128c0c32205f175148f993052cf2851229f81bb775",
              "size": -1
            },
            {
              "mediaType": "application/vnd.docker.image.rootfs.diff.tar",
              "digest": "sha256:5f70bf18a086007016e948b04aed3b82103a36bea41755b6cddfaf10ace3c6ef",
              "size": -1
            },
            {
              "mediaType": "application/vnd.docker.image.rootfs.diff.tar",
              "digest": "sha256:78ee28fdc7b79c0b6ab856b0507461a1481dd11c493be7dd9732b0f69a1eb34f",
              "size": -1
            },
            {
              "mediaType": "application/vnd.docker.image.rootfs.diff.tar",
              "digest": "sha256:690e0aca1c30811196038d22a2e6257d3ae634618daba6735de32a9703cb23b8",
              "size": -1
            }
          ]
        ],
        "step4:0": [
          []
        ],
        "step8:0": [
          [
            {
              "mediaType": "application/vnd.docker.image.rootfs.diff.tar",
              "digest": "sha256:0c3db79307ab91dad11fad2b136a2b56df6efeeb567c4c99e6e316b63885c9f6",
              "size": -1
            },
            {
              "mediaType": "application/vnd.docker.image.rootfs.diff.tar",
              "digest": "sha256:f421a7e99ead34566fcb11403f6f38675b53035f39937394893eaf7d87c39f83",
              "size": -1
            },
            {
              "mediaType": "application/vnd.docker.image.rootfs.diff.tar",
              "digest": "sha256:e280c6d15855f771612e1a2b87b4017044c5b0a25b494bbd3650ff99821f5334",
              "size": -1
            },
            {
              "mediaType": "application/vnd.docker.image.rootfs.diff.tar",
              "digest": "sha256:686138d9e74281d31c5183128c0c32205f175148f993052cf2851229f81bb775",
              "size": -1
            },
            {
              "mediaType": "application/vnd.docker.image.rootfs.diff.tar",
              "digest": "sha256:5f70bf18a086007016e948b04aed3b82103a36bea41755b6cddfaf10ace3c6ef",
              "size": -1
            },
            {
              "mediaType": "application/vnd.docker.image.rootfs.diff.tar",
              "digest": "sha256:78ee28fdc7b79c0b6ab856b0507461a1481dd11c493be7dd9732b0f69a1eb34f",
              "size": -1
            },
            {
              "mediaType": "application/vnd.docker.image.rootfs.diff.tar",
              "digest": "sha256:690e0aca1c30811196038d22a2e6257d3ae634618daba6735de32a9703cb23b8",
              "size": -1
            },
            {
              "mediaType": "application/vnd.docker.image.rootfs.diff.tar",
              "digest": "sha256:c9301499e3bd0a707acb5a3320b8ade17484586b120c4a521f14547169a01aa0",
              "size": -1
            }
          ]
        ]
      }
    }
  }
}