作者:Albert   出处:https://blog.csdn.net/qq_33558698/article/details/157681943
欢迎转载,也请保留这段说明,谢谢🌹

1. 新建持久化目录

我在宿主机上创建了如下目录:

/docker/usr/neo4j

(也可以不按照我的创建,在后续的操作脚本中,换成自己创建的目录即可)

创建具体的挂载卷目录,并赋予最高权限:

mkdir -p /docker/usr/neo4j/{data,logs,plugins,conf}
chmod -R 777 /docker/usr/neo4j
2. 安装镜像并启动容器

执行命令时,注意要把脚本中的注释去掉,内存大小配置自己按需决定

docker run -d \
  --name neo4j \
  --restart always \
  -p 7474:7474 -p 7687:7687 \
  -v /docker/usr/neo4j/data:/data \
  -v /docker/usr/neo4j/logs:/logs \
  -v /docker/usr/neo4j/plugins:/plugins \
  -v /docker/usr/neo4j/conf:/conf \
  -e NEO4J_AUTH=neo4j/password \  # 账号:neo4j/密码:password(改成自己的)
  -e NEO4J_dbms_memory_heap_initial__size=128M \
  -e NEO4J_dbms_memory_heap_max__size=256M \
  -e NEO4J_dbms_memory_pagecache_size=128M \
  --memory=512m \
  --cpus=1 \
  neo4j:5
3. 拷贝配置文件到宿主机

复制容器内默认配置文件到宿主机挂载目录:

docker cp neo4j:/var/lib/neo4j/conf/neo4j.conf /docker/usr/neo4j/conf/

使用 vim 编辑文件,或者使用 ftp 用记事本,添加如下配置:

# ===================== 网络配置(核心) =====================
server.bolt.listen_address=:7687
server.http.listen_address=:7474

# ===================== 内存配置(关键) =====================
server.memory.pagecache.size=256M
server.memory.heap.initial_size=256M
server.memory.heap.max_size=512M

# ===================== 目录配置 =====================
server.directories.plugins=/plugins
server.directories.logs=/logs

# ===================== 网络优化 =====================
dbms.bolt.connection_timeout=60s
server.connections.max=100           # 5.x 参数

# ===================== 兜底配置 =====================
server.config.strict_validation.enabled=false
server.anonymous_usage_data.enabled=false  # 可选关闭匿名上报

记得到云服务器控制台开放 7474 和 7687 端口!

上述操作执行完后,重启 neo4j 容器:

4. 进入 Neo4j 控制台面板

在浏览器地址栏中,输入 以下网址:

http://你的服务器 ip:7474

填写部署脚本中所配置的用户名和密码,即可进入如下界面⬇️

在这里插入图片描述

5. 测试 bolt 端口连通性

Windows 系统打开 PowerShell,输入如下命令:

Test-NetConnection 服务器IP -Port 7687

出现如下界面,则说明 7687 端口通了,可以在代码层面上,通过这个端口,操作 Neo4j 数据库,进行相关增删改查操作

在这里插入图片描述

6. (可选扩展)安装 GDS 插件

打开下面的链接,查看 GDS 支持的 Neo4j 版本:

https://neo4j.com/docs/graph-data-science/current/installation/supported-neo4j-versions/

在这里插入图片描述

综上可知,我的 Neo4j 版本为 5.26.18,对应的 GDS 插件版本是 2.13

打开 GDS 的 GithHub 官方仓库,下载对应版本的 GDS jar 包:

https://github.com/neo4j/graph-data-science/releases

在这里插入图片描述

下载到电脑本地后,添加到宿主机持久卷挂载目录, plugins 文件夹:

在这里插入图片描述

在这里插入图片描述

在 neo4j.conf 配置文件中,添加如下配置:

# ===================== GDS 配置 =====================
dbms.security.procedures.unrestricted=gds.*
gds.preload.enabled=true
gds.memory.heap.initial-size=128M    # 新增初始值
gds.memory.heap.max-size=128M
gds.memory.off-heap.max-size=64M     # 下调避免容器内存溢出

重启 neo4j 的 docker 容器:

docker restart neo4j

进入 neo4j 容器,启动 cypher-shell,输入密码后,输出查看 gds 版本的命令:

docker exec -it neo4j /bin/bash
cypher-shell
# 输入用户名(默认为 neo4j )
# 输入密码(输入的时候没有显示的,输完后直接回车即可)
return gds.version();

在这里插入图片描述

出现如图结果,即代表 gds 插件安装成功,并且已生效。

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐