Neo4j Docker 容器中的 SSL 加密 - 操作手册 - Neo4j 文档
使用 Docker 和 Docker Compose 建立 Neo4j 資料庫
| 特性 | Bolt 协议 | WebSocket 协议 |
|---|---|---|
| 核心定位 | 数据库通信协议 (专为 Neo4j 设计) | Web 实时通信协议 (浏览器与服务器通用) |
| 数据格式 | 二进制 (基于 PackStream 序列化) | 文本或二进制 (基于帧 Frame 结构) |
| 握手方式 | 直接建立 TCP 连接,进行版本协商 | 依赖 HTTP 握手 (Upgrade 头) 升级协议 |
| 通信模式 | 请求-响应 + 流式传输 (边查边传) | 全双工 (双方随时主动发消息) |
| 主要优势 | 极高的序列化效率,专为图数据优化 | 浏览器原生支持,生态极其丰富 |
| 典型应用 | Neo4j 数据库驱动、后端数据交互 | 聊天室、股票K线、在线游戏、即时通知 |
参考:
Neo4j Docker 容器中的 SSL 加密 - 操作手册
镜像版本: neo4j:5.26.24
registry.cn-hangzhou.aliyuncs.com/baimeidashu/bmds:neo4j-5.26.24
先准备 docker-compose.yaml 文件:
services:
neo4j:
image: registry.cn-hangzhou.aliyuncs.com/baimeidashu/bmds:neo4j-5.26.24
container_name: neo4j
ports:
- "7474:7474" # Neo4j 浏览器 HTTP
- "7687:7687" # Bolt 协议
volumes:
- ./neo4j/data:/data
- ./neo4j/logs:/logs
##- ./neo4j/conf:/var/lib/neo4j/conf
- ./neo4j/import:/var/lib/neo4j/import
- ./neo4j/plugins:/var/lib/neo4j/plugins
environment:
NEO4J_AUTH: neo4j/n.q36u,|}13h
用户名 neo4j
密码: n.q36u,|}13h
准备配置文件:
配置文件外挂到宿主机(需要启动容器后,docker cp 到宿主机,修改配置,然后重启动容器)
docker-compose up -d
docker cp neo4j:/var/lib/neo4j/conf ./neo4j/
建议为不同的通信通道(和)使用不同的证书。bolt https
mkdir ./neo4j/certificates/bolt
mkdir ./neo4j/certificates/https
上传证书到 bolt ,https 文件夹中,
第2步: 挂载配置文件:
把这个 ##- ./neo4j/conf:/var/lib/neo4j/conf
注释取消,
重新来。
通过neo4j.conf配置SSL
在 neo4j.conf 文件中,配置你想使用的策略设置:
# Https SSL configuration
server.https.enabled=true
dbms.ssl.policy.https.enabled=true
dbms.ssl.policy.https.base_directory=certificates/https
dbms.ssl.policy.https.private_key=private.key
dbms.ssl.policy.https.public_certificate=public.crt
# Bolt SSL configuration
dbms.ssl.policy.bolt.enabled=true
dbms.ssl.policy.bolt.base_directory=certificates/bolt
dbms.ssl.policy.bolt.private_key=private.key
dbms.ssl.policy.bolt.public_certificate=public.crt
还有:
# HTTPS Connector. There can be zero or one HTTPS connectors.
server.https.enabled=true
server.https.listen_address=:7473
# server.https.advertised_address=:7473
server.https.advertised_address=uat-wuhai.kattgatt-ai.com:7473
bolt
# Bolt connector
server.bolt.enabled=true
#server.bolt.tls_level=DISABLED
server.bolt.tls_level=REQUIRED
server.bolt.listen_address=:7687
server.bolt.advertised_address=:7687
我把配置文件的配置放到这里了:
neoj4.conf- 带ssl 证书 域名的配置 :连接
最后,测试:
https://uat-wuhai.kattgatt-ai.com:7473/browser/
登录:

可以正常登录:

欢迎来撩 : 汇总all
