首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在AWS Fargate中托管OSRM实例?

如何在AWS Fargate中托管OSRM实例?
EN

Stack Overflow用户
提问于 2020-04-10 00:31:40
回答 1查看 549关注 0票数 1

我一直在尝试在Fargate中设置一个OSRM-backend实例。然而,我还没能成功地做到这一点。我在其他地方读过关于如何在EC2实例中托管的文章,然而,没有关于如何在AWS Fargate上托管它的文章。

我已经能够修改下面的OSRM-backend的基础docker镜像(基础镜像公开端口5000):

代码语言:javascript
复制
FROM osrm/osrm-backend

WORKDIR /data

RUN apt-get update && apt-get install -y --no-install-recommends curl

RUN curl http://download.geofabrik.de/europe/ireland-and-northern-ireland-latest.osm.pbf --output ni-latest.osm.pbf && \
    osrm-extract -p /opt/car.lua ni-latest.osm.pbf && \
    osrm-partition ni-latest.osrm && \
    osrm-customize ni-latest.osrm

CMD ["osrm-routed", "--algorithm", "mld", "ni-latest.osrm", "--max-matching-size","50000"]

一旦我将其推送到容器注册表中,在弹性容器服务中设置任务定义,就会给出状态代码200和以下内容:

代码语言:javascript
复制
[info] starting up engines, v5.22.0
[info] Threads: 4
[info] IP address: 0.0.0.0
[info] IP port: 5000
[info] http 1.1 compression handled by zlib version 1.2.11
[info] Listening on: 0.0.0.0:5000
[info] running and waiting for requests

然而,在ECS任务中给定公共IP并尝试在sagemaker notebook中调用它之后,它会像预期的那样运行:

代码语言:javascript
复制
response = requests.get('http://{ECSpublicIP}:80/match/v1/driving/13.388860,52.517037;13.397634,52.529407?overview=full&geometries=geojson')

它给出了一个连接错误代码111,我还不能找出原因。在Fargate上托管OSRM可能吗?

谢谢

EN

回答 1

Stack Overflow用户

发布于 2020-11-05 16:08:45

抱歉,回复晚了,不知道这是否仍然相关,但是的,它应该是可能的。在本地部署时,您是否能够通过localhost访问它?还要确保您的容器端口映射到位,有关任务网络https://aws.amazon.com/blogs/compute/task-networking-in-aws-fargate/的更多信息,请参阅此链接

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61125870

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档