{ "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": { "exec": { "meta": { "args": [ "/bin/sh", "-c", "pip install shiny==1.2.0 numpy matplotlib plotly pandas shinywidgets lonboard requests overturemaps palettable pyogrio lonboard requests pyarrow geopandas tqdm duckdb" ], "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": [ "step2:0" ] }, { "id": "step4", "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": [ "step3:0" ] }, { "id": "step5", "op": { "Op": { "exec": { "meta": { "args": [ "/bin/sh", "-c", "chown app:app -R /home/" ], "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": null }, "inputs": [ "step5:0" ] } ], "digestMapping": { "sha256:18b24a20320661d11e7659bcad2c21386c52ba5f2c8d1b69d3394180edc89221": "step4", "sha256:1b4b3b8e2026f0426f875dfa325ace772d6a3a55dbc0060eefe791396b6d64d0": "step2", "sha256:32986792114d28f71c0f5f4275e5f11311d0ea3ff7a0c21149207e762b78de1f": "step3", "sha256:71059255185e743a0360a427f6dd246bf5e2e90889730e22cf19381f8695a4fc": "step0", "sha256:90284dd6bf3884835efa0e35b423976456b6f86b54ecb64a47280cc6001d1477": "step1", "sha256:a040056413791cfbfb2057b789d8c5cd6f391377c9e1ba644d78c6cf1398b6af": "step6", "sha256:b4cff28b6cba9d021b1f96b97f3116a5c84e5cf78d09d62958cfb711d8a7c6de": "step5" } }, "metadata": { "buildInvocationID": "8da575129yzplp4e6oo4ke5rq", "buildStartedOn": "2024-11-29T13:39:51.132733816Z", "buildFinishedOn": "2024-11-29T13:41:00.106251925Z", "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": { "locations": [ { "ranges": [ { "start": { "line": 10 }, "end": { "line": 10 } } ] } ] }, "step4": { "locations": [ { "ranges": [ { "start": { "line": 13 }, "end": { "line": 13 } } ] } ] }, "step5": { "locations": [ { "ranges": [ { "start": { "line": 14 }, "end": { "line": 14 } } ] } ] } }, "infos": [ { "filename": "Dockerfile", "data": "RlJPTSBweXRob246My45CgojIENyZWFyIGdydXBvIHkgdXN1YXJpbwpSVU4gYWRkZ3JvdXAgLS1zeXN0ZW0gYXBwICYmIGFkZHVzZXIgLS1zeXN0ZW0gLS1pbmdyb3VwIGFwcCBhcHAKV09SS0RJUiAvaG9tZS9hcHAKCiMgQ29waWFyIGUgaW5zdGFsYXIgbG9zIHJlcXVpc2l0b3MKI0NPUFkgLi9yZXF1aXJlbWVudHMudHh0IC4KI1JVTiBwaXAgaW5zdGFsbCAtLW5vLWNhY2hlLWRpciAtLXVwZ3JhZGUgLXIgcmVxdWlyZW1lbnRzLnR4dApSVU4gcGlwIGluc3RhbGwgc2hpbnk9PTEuMi4wIG51bXB5IG1hdHBsb3RsaWIgcGxvdGx5IHBhbmRhcyBzaGlueXdpZGdldHMgbG9uYm9hcmQgcmVxdWVzdHMgb3ZlcnR1cmVtYXBzIHBhbGV0dGFibGUgcHlvZ3JpbyBsb25ib2FyZCByZXF1ZXN0cyBweWFycm93IGdlb3BhbmRhcyB0cWRtIGR1Y2tkYiAKI1JVTiBwaXAgaW5zdGFsbCAtLXVwZ3JhZGUgc2hpbnk9PTEuMi4wCiMgQ2FtYmlhciBwZXJtaXNvcyB5IHVzdWFyaW8KUlVOIGNob3duIGFwcDphcHAgLVIgL2hvbWUvYXBwClJVTiBjaG93biBhcHA6YXBwIC1SIC9ob21lLwpVU0VSIGFwcAoKIyBFeHBvbmVyIGVsIHB1ZXJ0byB5IGRlZmluaXIgZWwgY29tYW5kbyBkZSBpbmljaW8KRVhQT1NFIDgwODAKQ01EIFsidXZpY29ybiIsICJhcHA6YXBwIiwgIi0taG9zdCIsICIwLjAuMC4wIiwgIi0tcG9ydCIsICI4MDgwIl0KCg==", "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:07d5dfbbb3bd32fc99e7e0ab6622d6495051b7b6095b8f3337a6b3e6d3d2cc9b": "step0", "sha256:a7cd797dc37b56ec8d4dd2ab12d13be7be7850a66a2a78168756b68cd0a1ac38": "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": [ [ { "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:073eb7e22c55b0555c332d0f33cf6f2d7c649ac1e78eb6e011e5c71d0e697adf", "size": -1 } ] ], "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:073eb7e22c55b0555c332d0f33cf6f2d7c649ac1e78eb6e011e5c71d0e697adf", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:726a777a99a876cc40260f7edaea81df7c4c897b915ae55754bd9989ff5db7e7", "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:073eb7e22c55b0555c332d0f33cf6f2d7c649ac1e78eb6e011e5c71d0e697adf", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:726a777a99a876cc40260f7edaea81df7c4c897b915ae55754bd9989ff5db7e7", "size": -1 }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar", "digest": "sha256:833d88d783032767844acd23ce3507e44d3a103711e3acdb6975323881640305", "size": -1 } ] ] } } } }