我将先说我是新手。
尽管如此,我正在尝试使用 Docker 运行 OSRM。我尝试运行他们在 github 上列出的第一个 OSRM 后端 docker 命令:
docker run -t -v "${PWD}:/data" osrm/osrm-backend osrm-extract -p /opt/car.lua /data/berlin-latest.osm.pbf
需要注意的是,我将 OSRM 后端中的原始命令“${PWD}”更改为“%cd%”,因为我在 Windows 10 上运行 docker,而不是 Linux。
我还使用了丹麦的 Geofabrik 剪纸而不是柏林(他们在 Github 上的演示版本中使用了它)。
这是我在命令提示符下运行的内容:
docker run -t -v "%cd%":/data osrm/osrm-backend osrm-extract -p /opt/foot.lua /data/denmark-latest.osm.pbf
正如您在所附照片中看到的,它开始拉动“osrm/osrm-backend:最新”。但我收到错误消息:“[error] 输入文件 /data/denmark-latest.osm.pbf 未找到!”这很奇怪,因为我将 denmark-latest.osm.pbf 存储在 c -->docker --> 中data 以及我桌面上名为 osrm-backend-master 的文件夹中的副本,其中配置文件位于(我的情况下为 foot.lua),并且在名为“data”的文件夹中我存储了 denmark-latest.osm.pbf。
有几篇文章提到“共享驱动器”选项作为我的问题的解决方案,但在我的设置中,我没有“共享驱动器”选项 - 我认为这是因为我在 WSL 2 上运行(尽管我不确定该选项) )。
CMD提示符图片:
你们谁能看出我做错了什么吗?
小智 1
不久前我也遇到过类似的错误。我尝试过类似的事情,但我真的不记得了:
docker run -t -v "${PWD}:/data" osrm/osrm-backend osrm-extract -p /opt/car.lua /data/denmark-latest.osm.pbf
Run Code Online (Sandbox Code Playgroud)
此外,您可以在第一个“数据出现”之后添加额外的“/”,例如:
docker run -t -v "${PWD}:/data/" osrm/osrm-backend osrm-extract -p /opt/car.lua /data/denmark-latest.osm.pbf
Run Code Online (Sandbox Code Playgroud)
或者您可以进入新data文件夹并运行任何这些命令。
| 归档时间: |
|
| 查看次数: |
1287 次 |
| 最近记录: |