如何使用 blazegraph 托管我自己的 triplestore?

How to host my own triplestore using blazegraph?

我是 Blazegraph 的新手,过去几个月我一直在本地使用它作为项目的一部分进行开发。我目前正在尝试在线托管我的三重商店的一个实例,并且已经到了我迷路的地步。

我的应用程序使用 spring-boot API 来管理与三重存储的任何交互。我最初使用 docker-compose 在我的本地机器上托管,并且能够毫无问题地查询和更新三元组。这是我使用的 docker-compose.yml 文件:

version: '3'
services:
  triplestore:
    image: lyrasis/blazegraph:2.1.5

    ports:
      - "9999:9999"
    restart: on-failure
    networks:
      - jacks-net
  api:
    build: .
    ports:
      - "8080:8080"
    networks:
     - jacks-net
networks:
  jacks-net:

当谈到生产时,我尝试使用 Heroku 部署我的 docker-compose 应用程序,发现 Heroku 似乎不支持这个。我只能使用以下 Docker 文件在 Heroku 上托管 API:

FROM openjdk:8-jdk-alpine
ARG JAR_FILE=target/*.jar
COPY ${JAR_FILE} app.jar
ENTRYPOINT ["java","-jar","/app.jar"]

我还尝试使用 Docker 和 Heroku 分别托管 API 和 Triplestore,用于 spring-boot API 似乎工作正常。我曾尝试使用 Heroku's executable jar capabailities 托管 Blazegraph 提供的 bigdata.jar 文件,但没有成功。

我非常感谢有关最佳前进方向的一些建议和指导。如何托管 Blazegraph 实例以与我的 spring 启动 API 一起使用?我可以使用我在本地使用的 docker-compose.yml 文件吗?

在此先感谢您的帮助:)

一种简单的方法是在 AWS 上使用 Amazon Elastic Compute Cloud (EC2) 实例。

只需在 Linux VM 上安装 docker-compose,运行 从那里安装 docker-compose 文件,然后使用弹性 IP 地址和 Cloudflare安全 HTTPS 连接。

如果您最终需要更好的可扩展性,您可以将 Blazegraph 实例卸载到它自己的 VM,然后移动到 API 的容器服务。

还值得注意的是,Blazegraph 现在已被弃用,开发人员已加入亚马逊并成为 Amazon Neptune。