Docker搭建hugegraph

搭建环境:Macos Monterey 

本机已经安装好了Docker Desktop, Mysql也已经安装好了(宿主中安装的),已经测试通过了。

一:下载hugegraph

注意:我这里下载的是1.5.0的版本,之前下载没有指定版本,下载的latest, 下载安装后查看好像是1.7.0的版本,但是这个版本有一个问题,不支持mysql等后端,

在latest版本的配置文件中,打开 conf/graphs/hugegraph.properties

所以这里下载1.5.0版本的

docker pull hugegraph/hugegraph:1.5.0
docker pull hugegraph/hubble:1.5.0
 

二:配置hugegraph

docker 模式下,若 hubble 和 server 在同一宿主机,hubble 页面中设置 server 的 hostname 不能设置为 localhost/127.0.0.1,因这会指向 hubble 容器内部而非宿主机,导致无法连接到 server.

若 hubble 和 server 在同一 docker 网络下,推荐直接使用container_name 作为主机名。或者也可以使用 宿主机 IP 作为主机名,此时端口号为宿主机给 server 配置的端口

创建一个公用的网络:

docker network create hugegraph-net

2.1 启动hugegraph

新建目录:hugegraph, 进入hugegraph目录中, 创建文件 docker-compose.yml
services:
  hugegraph-server:
    image: hugegraph/hugegraph:1.5.0
    container_name: hugegraph-server
    volumes:
      - /Users/apple/workfolder/docker/hugegraph/conf:/hugegraph-server/conf
    privileged: true    
    ports:
      - "8080:8080"
    extra_hosts:
      - "host.docker.internal:192.168.1.8"
    environment:
      - TZ=Asia/Shanghai
    restart: always
    networks:
      - hugegraph-net
  hugegraph-hubble:
    image: hugegraph/hubble:1.5.0
    container_name: hugegraph-hubble
    restart: always
    privileged: true
    ports:
      - 18088:8088
    networks:
      - hugegraph-net  

networks:
  hugegraph-net:
    driver: bridge

在当前目录中执行脚本:

docker-compose up -d

打开Docker Desktop,在Containers选项卡中可以看hugegraph

浏览器中查看,查看当前hugegraph的版本

2.2:  映射配置目录

进入hugegrap服务的bash, 可以看到配置文件均在conf目录中,

在本机的hugegraph目录中,创建一conf目录,把docker里面的对应的conf文件全部复制到当前目录中。

% docker cp eca3c4b9f19f:/hugegraph-server/conf  conf

修改docker-compose.yml ,添加目录映射

volumes:
  - /Users/apple/workfolder/docker/hugegraph/conf:/hugegraph-server/conf

删除之前hugegraph对应的container ,重新执行

% docker-compose up -d

2.3 使用MySQL 后端配置

进入conf/graphs 目录,将文件 hugegraph.properties复制一份,2个文件分别命名 hugegraph_rocksdb.properties 和 hugegraph_mysql.properties 

hugegraph_rocksdb.properties文件内容不变,

hugegraph_mysql.properties内容如下:hugegraph_mysql 对应与mysql中已经创建的数据库名称

# HugeGraph MySQL Configuration
gremlin.graph=org.apache.hugegraph.HugeFactory
backend=mysql
serializer=mysql

store=hugegraph_mysql
 
jdbc.driver=com.mysql.cj.jdbc.Driver
jdbc.url=jdbc:mysql://host.docker.internal:3307
jdbc.username=w2025
jdbc.password=yuan9876
jdbc.reconnect_max_times=3
jdbc.reconnect_interval=3
jdbc.ssl_mode=false

确保 MySQL JDBC 驱动已正确放置:

下载 MySQL Connector/J (如 mysql-connector-java-8.0.28.jar)
将驱动放入 lib/ 目录下
docker cp lib/mysql-connector-java-8.0.28.jar eca3c4b9f19f:/hugegraph-server/lib/ 
在hugegraph的bash中执行以下命令:
bin/stop-hugegraph.sh
bin/init-store.sh
bin/start-hugegraph.sh

在浏览器中查看:

 

3: 使用hubble进行图管理

在浏览器中查看: http://localhost:18088/

创建图:

 

 

posted @ 2024-11-02 09:58  南极山  阅读(65)  评论(0)    收藏  举报