{ "builder": { "id": "" }, "buildType": "https://mobyproject.org/buildkit@v1", "materials": [ { "uri": "pkg:docker/python@3.9?platform=linux%2Famd64", "digest": { "sha256": "332741499f49a3f3e7749dad70e6ecf1129f00a269fdd6111da2ed2693fbe50e" } } ], "invocation": { "configSource": {}, "parameters": { "frontend": "dockerfile.v0", "locals": [ { "name": "context" }, { "name": "dockerfile" } ] }, "environment": { "platform": "linux/amd64" } }, "buildConfig": { "llbDefinition": [ { "id": "step0", "op": { "Op": { "source": { "identifier": "docker-image://docker.io/library/python:3.9@sha256:332741499f49a3f3e7749dad70e6ecf1129f00a269fdd6111da2ed2693fbe50e" } }, "platform": { "Architecture": "amd64", "OS": "linux" }, "constraints": {} } }, { "id": "step1", "op": { "Op": { "exec": { "meta": { "args": [ "/bin/sh", "-c", "addgroup --system app \u0026\u0026 adduser --system --ingroup app app" ], "env": [ "PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "LANG=C.UTF-8", "GPG_KEY=E3FF2839C048B25C084DEBE9B26995E310250568", "PYTHON_VERSION=3.9.20", "PYTHON_SHA256=6b281279efd85294d2d6993e173983a57464c0133956fbbb5536ec9646beaf0c" ], "cwd": "/", "removeMountStubsRecursive": true }, "mounts": [ { "input": 0, "dest": "/", "output": 0 } ] } }, "platform": { "Architecture": "amd64", "OS": "linux" }, "constraints": {} }, "inputs": [ "step0:0" ] }, { "id": "step2", "op": { "Op": { "file": { "actions": [ { "input": 0, "secondaryInput": -1, "output": 0, "Action": { "mkdir": { "path": "/home/app", "mode": 493, "makeParents": true, "timestamp": -1 } } } ] } }, "platform": { "Architecture": "amd64", "OS": "linux" }, "constraints": {} }, "inputs": [ "step1:0" ] }, { "id": "step3", "op": { "Op": { "source": { "identifier": "local://context", "attrs": { "local.followpaths": "[\"requirements.txt\"]", "local.sharedkeyhint": "context" } } }, "constraints": {} } }, { "id": "step4", "op": { "Op": { "file": { "actions": [ { "input": 0, "secondaryInput": 1, "output": 0, "Action": { "copy": { "src": "/requirements.txt", "dest": "/home/app/", "mode": -1, "followSymlink": true, "dirCopyContents": true, "createDestPath": true, "allowWildcard": true, "allowEmptyWildcard": true, "timestamp": -1 } } } ] } }, "platform": { "Architecture": "amd64", "OS": "linux" }, "constraints": {} }, "inputs": [ "step2:0", "step3:0" ] }, { "id": "step5", "op": { "Op": { "exec": { "meta": { "args": [ "/bin/sh", "-c", "pip install --no-cache-dir --upgrade -r requirements.txt" ], "env": [ "PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "LANG=C.UTF-8", "GPG_KEY=E3FF2839C048B25C084DEBE9B26995E310250568", "PYTHON_VERSION=3.9.20", "PYTHON_SHA256=6b281279efd85294d2d6993e173983a57464c0133956fbbb5536ec9646beaf0c" ], "cwd": "/home/app", "removeMountStubsRecursive": true }, "mounts": [ { "input": 0, "dest": "/", "output": 0 } ] } }, "platform": { "Architecture": "amd64", "OS": "linux" }, "constraints": {} }, "inputs": [ "step4:0" ] }, { "id": "step6", "op": { "Op": { "exec": { "meta": { "args": [ "/bin/sh", "-c", "chown app:app -R /home/app" ], "env": [ "PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "LANG=C.UTF-8", "GPG_KEY=E3FF2839C048B25C084DEBE9B26995E310250568", "PYTHON_VERSION=3.9.20", "PYTHON_SHA256=6b281279efd85294d2d6993e173983a57464c0133956fbbb5536ec9646beaf0c" ], "cwd": "/home/app", "removeMountStubsRecursive": true }, "mounts": [ { "input": 0, "dest": "/", "output": 0 } ] } }, "platform": { "Architecture": "amd64", "OS": "linux" }, "constraints": {} }, "inputs": [ "step5:0" ] }, { "id": "step7", "op": { "Op": null }, "inputs": [ "step6:0" ] } ], "digestMapping": { "sha256:0b06684a4d42c0c507a2a38dd46cb1079a456f6d57603fa8862209f1e7d72706": "step7", "sha256:1b4b3b8e2026f0426f875dfa325ace772d6a3a55dbc0060eefe791396b6d64d0": "step2", "sha256:71059255185e743a0360a427f6dd246bf5e2e90889730e22cf19381f8695a4fc": "step0", "sha256:90284dd6bf3884835efa0e35b423976456b6f86b54ecb64a47280cc6001d1477": "step1", "sha256:9033d3e2eef90b8886b450c2e911f3e1ad4350651c68906687ccc3b1f658413c": "step4", "sha256:c0154e6f500e6e8e9bd7918107cae0efa2d56a7aad0e6b99cc339ce2b53913b9": "step3", "sha256:dc71bf8096a52965c19439321bbd98fb05320f8db9d22657b31985be52eb3b28": "step6", "sha256:f853b291def2319356cff6daa678b768682f96079278cb4cd7fc9443a9ad5908": "step5" } }, "metadata": { "buildInvocationID": "i3zifrl213e3dcwi97on34c3g", "buildStartedOn": "2024-11-15T09:10:17.01586688Z", "buildFinishedOn": "2024-11-15T09:11:06.175266826Z", "completeness": { "parameters": true, "environment": true, "materials": false }, "reproducible": false, "https://mobyproject.org/buildkit@v1#metadata": { "source": { "locations": { "step0": { "locations": [ { "ranges": [ { "start": { "line": 1 }, "end": { "line": 1 } } ] } ] }, "step1": { "locations": [ { "ranges": [ { "start": { "line": 4 }, "end": { "line": 4 } } ] } ] }, "step2": { "locations": [ { "ranges": [ { "start": { "line": 5 }, "end": { "line": 5 } } ] } ] }, "step3": {}, "step4": { "locations": [ { "ranges": [ { "start": { "line": 8 }, "end": { "line": 8 } } ] } ] }, "step5": { "locations": [ { "ranges": [ { "start": { "line": 9 }, "end": { "line": 9 } } ] } ] }, "step6": { "locations": [ { "ranges": [ { "start": { "line": 12 }, "end": { "line": 12 } } ] } ] } }, "infos": [ { "filename": "Dockerfile", "data": "RlJPTSBweXRob246My45CgojIENyZWFyIGdydXBvIHkgdXN1YXJpbwpSVU4gYWRkZ3JvdXAgLS1zeXN0ZW0gYXBwICYmIGFkZHVzZXIgLS1zeXN0ZW0gLS1pbmdyb3VwIGFwcCBhcHAKV09SS0RJUiAvaG9tZS9hcHAKCiMgQ29waWFyIGUgaW5zdGFsYXIgbG9zIHJlcXVpc2l0b3MKQ09QWSAuL3JlcXVpcmVtZW50cy50eHQgLgpSVU4gcGlwIGluc3RhbGwgLS1uby1jYWNoZS1kaXIgLS11cGdyYWRlIC1yIHJlcXVpcmVtZW50cy50eHQKCiMgQ2FtYmlhciBwZXJtaXNvcyB5IHVzdWFyaW8KUlVOIGNob3duIGFwcDphcHAgLVIgL2hvbWUvYXBwClVTRVIgYXBwCgojIEV4cG9uZXIgZWwgcHVlcnRvIHkgZGVmaW5pciBlbCBjb21hbmRvIGRlIGluaWNpbwpFWFBPU0UgODA4MApDTUQgWyJ1dmljb3JuIiwgImFwcDphcHAiLCAiLS1ob3N0IiwgIjAuMC4wLjAiLCAiLS1wb3J0IiwgIjgwODAiXQoK", "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:36bf93679bb2360364d0a750aa39701ab0a8c08e9ead3b28d0d0da983edcd641": "step0", "sha256:4ddceae5a7f1fa7cf4c2ea0c2911d886436c44aa8650db61e9804002f2787e69": "step1" } } ] }, "layers": { "step0:0": [ [ { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:24b5ce0f1e07d37a35460f50d058afcf738619e431013d2e1727609bdff2d7fc", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:b6ca42156b9f492afa27c366f20e4e864cef8dd8d0e0a100497764b05b39e6fc", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:00547dd240c419fa2e1b33e66aba302e8dfa4bfe6401a972d94a03b1355cbc6c", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:96d99c63b722657062d3f33cc230e33b191ea9855c050f44871e173709597e35", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:68fff311c8777a4b4e0d637c3ef020f6941bb55497d0ffb7f3a7271b747963ac", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:1354cd991b1ce55bb286e284afbe7acde18999c11bb82a2dabe6f3b526e90723", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:6f48ad9487513215b70854b46d5f63ad25bff44eb04a117d016582567a64b63b", "size": -1 } ] ], "step1:0": [ [ { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:24b5ce0f1e07d37a35460f50d058afcf738619e431013d2e1727609bdff2d7fc", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:b6ca42156b9f492afa27c366f20e4e864cef8dd8d0e0a100497764b05b39e6fc", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:00547dd240c419fa2e1b33e66aba302e8dfa4bfe6401a972d94a03b1355cbc6c", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:96d99c63b722657062d3f33cc230e33b191ea9855c050f44871e173709597e35", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:68fff311c8777a4b4e0d637c3ef020f6941bb55497d0ffb7f3a7271b747963ac", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:1354cd991b1ce55bb286e284afbe7acde18999c11bb82a2dabe6f3b526e90723", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:6f48ad9487513215b70854b46d5f63ad25bff44eb04a117d016582567a64b63b", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:034aff1498d35b15d189c7e41af98a980ffb61048735fbfa960fe2f896c901a0", "size": -1 } ] ], "step2:0": [ [ { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:24b5ce0f1e07d37a35460f50d058afcf738619e431013d2e1727609bdff2d7fc", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:b6ca42156b9f492afa27c366f20e4e864cef8dd8d0e0a100497764b05b39e6fc", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:00547dd240c419fa2e1b33e66aba302e8dfa4bfe6401a972d94a03b1355cbc6c", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:96d99c63b722657062d3f33cc230e33b191ea9855c050f44871e173709597e35", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:68fff311c8777a4b4e0d637c3ef020f6941bb55497d0ffb7f3a7271b747963ac", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:1354cd991b1ce55bb286e284afbe7acde18999c11bb82a2dabe6f3b526e90723", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:6f48ad9487513215b70854b46d5f63ad25bff44eb04a117d016582567a64b63b", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:034aff1498d35b15d189c7e41af98a980ffb61048735fbfa960fe2f896c901a0", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:115eadaf957fa7ed8b84c0a3771b3d707ab2a70b884de812ad29009443bb5603", "size": -1 } ] ], "step3:0": [ [] ], "step4:0": [ [ { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:24b5ce0f1e07d37a35460f50d058afcf738619e431013d2e1727609bdff2d7fc", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:b6ca42156b9f492afa27c366f20e4e864cef8dd8d0e0a100497764b05b39e6fc", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:00547dd240c419fa2e1b33e66aba302e8dfa4bfe6401a972d94a03b1355cbc6c", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:96d99c63b722657062d3f33cc230e33b191ea9855c050f44871e173709597e35", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:68fff311c8777a4b4e0d637c3ef020f6941bb55497d0ffb7f3a7271b747963ac", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:1354cd991b1ce55bb286e284afbe7acde18999c11bb82a2dabe6f3b526e90723", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:6f48ad9487513215b70854b46d5f63ad25bff44eb04a117d016582567a64b63b", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:034aff1498d35b15d189c7e41af98a980ffb61048735fbfa960fe2f896c901a0", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:115eadaf957fa7ed8b84c0a3771b3d707ab2a70b884de812ad29009443bb5603", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:c414098d004c4aa68c547b77df73cd91bbcaa588b42beff783d3dd03adf183c0", "size": -1 } ] ], "step5:0": [ [ { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:24b5ce0f1e07d37a35460f50d058afcf738619e431013d2e1727609bdff2d7fc", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:b6ca42156b9f492afa27c366f20e4e864cef8dd8d0e0a100497764b05b39e6fc", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:00547dd240c419fa2e1b33e66aba302e8dfa4bfe6401a972d94a03b1355cbc6c", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:96d99c63b722657062d3f33cc230e33b191ea9855c050f44871e173709597e35", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:68fff311c8777a4b4e0d637c3ef020f6941bb55497d0ffb7f3a7271b747963ac", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:1354cd991b1ce55bb286e284afbe7acde18999c11bb82a2dabe6f3b526e90723", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:6f48ad9487513215b70854b46d5f63ad25bff44eb04a117d016582567a64b63b", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:034aff1498d35b15d189c7e41af98a980ffb61048735fbfa960fe2f896c901a0", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:115eadaf957fa7ed8b84c0a3771b3d707ab2a70b884de812ad29009443bb5603", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:c414098d004c4aa68c547b77df73cd91bbcaa588b42beff783d3dd03adf183c0", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:2d3a39cc998df407cbb5acec7938b65fcfc698a777d3f0316e77d7a93d3d1b7d", "size": -1 } ] ], "step6:0": [ [ { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:24b5ce0f1e07d37a35460f50d058afcf738619e431013d2e1727609bdff2d7fc", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:b6ca42156b9f492afa27c366f20e4e864cef8dd8d0e0a100497764b05b39e6fc", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:00547dd240c419fa2e1b33e66aba302e8dfa4bfe6401a972d94a03b1355cbc6c", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:96d99c63b722657062d3f33cc230e33b191ea9855c050f44871e173709597e35", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:68fff311c8777a4b4e0d637c3ef020f6941bb55497d0ffb7f3a7271b747963ac", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:1354cd991b1ce55bb286e284afbe7acde18999c11bb82a2dabe6f3b526e90723", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:6f48ad9487513215b70854b46d5f63ad25bff44eb04a117d016582567a64b63b", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:034aff1498d35b15d189c7e41af98a980ffb61048735fbfa960fe2f896c901a0", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:115eadaf957fa7ed8b84c0a3771b3d707ab2a70b884de812ad29009443bb5603", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:c414098d004c4aa68c547b77df73cd91bbcaa588b42beff783d3dd03adf183c0", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:2d3a39cc998df407cbb5acec7938b65fcfc698a777d3f0316e77d7a93d3d1b7d", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:333326be72537bb63e74d18bd89000f3d595a9ae77f170d9ed16f59b052b276d", "size": -1 } ] ] } } } }