{ "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:1b4b3b8e2026f0426f875dfa325ace772d6a3a55dbc0060eefe791396b6d64d0": "step2", "sha256:1f9da34c18ebe66ac5041c4457eb038a73e476e74d0681fe4fb25d9efc0677d7": "step4", "sha256:3745ba946637d779aa05192eec88a4d478896e644576fc0d7f996cd804c9ba2d": "step5", "sha256:644aae9bedea71e65f63182764ca6e046a28fa10ec709239582761928327a08a": "step6", "sha256:71059255185e743a0360a427f6dd246bf5e2e90889730e22cf19381f8695a4fc": "step0", "sha256:90284dd6bf3884835efa0e35b423976456b6f86b54ecb64a47280cc6001d1477": "step1", "sha256:90379fadcd139f8b0332a77092559bf24543cfc50660b5837c57c6ed9a8c693e": "step7", "sha256:b4d505ad19549055749b34185752f1f4e34c55a85b993ef9164cff6880be510a": "step3" } }, "metadata": { "buildInvocationID": "jpviea1euvtu2uura1f7xjiud", "buildStartedOn": "2024-11-15T09:02:17.167061867Z", "buildFinishedOn": "2024-11-15T09:02:40.331157525Z", "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:ce209918cb3dbe536a3b307c0e6f8b49abac297e3e22f31e59eaeb53383d6721": "step0", "sha256:f8796c7f565838de1f94352f4c9025e3d4523eedebaf69c51b032e0f5c5c975c": "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:a89e1d2f54fb35a6dd4bc9396a2967ec2ca36a2ea043069e2ec8c8a90fadbae3", "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:a89e1d2f54fb35a6dd4bc9396a2967ec2ca36a2ea043069e2ec8c8a90fadbae3", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:2af3912e30ae15a93bd97ad20cdf7b77ddcee2fd7b92335b4c96f06e8095ed5a", "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:a89e1d2f54fb35a6dd4bc9396a2967ec2ca36a2ea043069e2ec8c8a90fadbae3", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:2af3912e30ae15a93bd97ad20cdf7b77ddcee2fd7b92335b4c96f06e8095ed5a", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:39f3be1c0a325457493fe84a043e3dd0d6d7ec8e63e552f3946786e7ead10e5c", "size": -1 } ] ] } } } }