Docker 部署 FalkorDB:轻松搭建属性图数据库与知识图谱平台

📅 2026/8/24 2:14:41
Docker 部署 FalkorDB:轻松搭建属性图数据库与知识图谱平台
本文基于 falkordb/falkordb:latest实测引擎FalkorDB v4.20.1底层 Redis8.6.3测试平台Ubuntu 24.04Linux。做推荐、风控、组织架构或运维资产盘点时数据往往不是「一张宽表」就能说清用户关注过哪些商品、设备挂在哪台机柜、服务依赖哪些上游、知识库里实体之间差几跳——这些都是多跳关系。用 MySQL / PostgreSQL 硬拼 JOIN查询难写、改一次业务就要改一串表排查时还要在代码、Wiki、Excel 之间对账关系一复杂就容易漏边。做 LLM 应用时又多了一层诉求希望把业务知识建成知识图谱用图查询做检索增强KG-RAG还要延迟低、能私有化。图谱若只能跑在厂商托管图库上内网语料、客户关系、机房拓扑一类数据就不适合出域自建若只剩「重型图平台 复杂运维」小团队又扛不住授权与资源成本。不少团队真正需要的其实很具体用熟悉的 Cypher 就能查图、用常见 Redis 客户端就能连、浏览器里能看见节点和边数据落在自己的服务器上。不必一上来就上完整企业图平台。FalkorDB正是面向这类需求的开源可查询属性图数据库图以稀疏矩阵表示邻接关系查询语言基于OpenCypher含专有扩展也明确面向低延迟知识图谱 / KG-RAG 场景。社区镜像falkordb/falkordb见 镜像页在同一容器内集成图引擎 FalkorDB Browser——协议口跑GRAPH.QUERY浏览器里建图、写 Cypher、看画布适合开发联调与自托管原型。部署跑通之后你实际能做这些事场景部署后怎么用关系数据自托管Compose 拉起后用 Browser 或redis-cli建图、写 Cypher数据落在本机卷KG-RAG / 知识图谱原型把实体与关系写入图低延迟查询路径与邻居再对接自己的 LLM 流水线可视化排查浏览器打开:13300在画布上看节点、边与查询结果少靠纯日志猜结构应用对接任意 Redis 客户端发GRAPH.*Python 等可用redis-py调原始命令本文按「能跟做」写完整链路用 轩辕镜像 加速拉取falkordb/falkordb:latestDocker Compose映射6379协议与宿主机13300Browser容器内 3000完成登录、建图与 Cypher 演示另附redis-cli验证与docker run备选。全程可跟做文内附11张实测界面截图。上手要点部署默认Compose第五节临时试玩见第十节 docker run端口宿主机6379、13300→3000Browser不占用宿主机 3000数据卷宿主机./data→ 容器/var/lib/falkordb/data登录Browser 填 Hostlocalhost、Port6379未设密码时 Username / Password留空勿填占位文案Default标签跟做用latest实测引擎v4.20.1生产钉版本对外暴露 Browser 建议≥ v4.14.9生产加REDIS_ARGS--requirepass … --appendonly yes勿把 6379 裸暴露公网日志里的vm.overcommit_memory见 FAQ镜像说明见 falkordb/falkordb标签列表见 tags。官方文档Docker、Persistence、Browser。项目GitHub · FalkorDB示例demo。一、FalkorDB 是什么能力说明属性图节点可多标签、关系有类型均可带属性查询OpenCypher经 Redis 协议调用GRAPH.QUERY等BrowserWeb UI画布、查询编辑器、图管理、设置与用户典型用途知识图谱 / KG-RAG、关系分析、图谱原型方案适合FalkorDB本文要自托管图库 可选 Browser部署轻Neo4j 等要完整企业图平台与重工具链纯关系库 JOIN关系极浅、暂不引入图库同组织相关镜像falkordb-server仅引擎、falkordb-browser独立 UI。redis-cli / SDK ──:6379──▶ FalkorDBGRAPH.* 浏览器 ──:13300──▶ Browser容器内 :3000 ./data ──挂载──▶ /var/lib/falkordb/data二、环境要求项目建议系统Linux建议Ubuntu 24.04DockerEngine Compose V2内存≥12 GB可用随图规模增加磁盘镜像约159MB本地占用约613MB 数据增长端口宿主机6379、13300docker--versiondockercompose versionLinux 未装 Docker 可使用轩辕镜像一键安装脚本bash(wget-qO- https://xuanyuan.cloud/docker.sh)备用地址bash(wget-qO- https://get.xuanyuan.me/docker.sh)更多见 轩辕镜像使用手册。宿主机 6379 已被占用时Compose 改为6380:6379客户端用-p 6380。Browser 宿主机口可改保持宿主机端口:3000即可。三、标签怎么选标签含义推荐latest跟随稳定线跟做 / 实验室本文vX.Y.Z固定发布生产Browser 相关修复选≥ v4.14.9edge较新构建仅尝鲜完整列表tags。镜像页注明 React2ShellCVE-2025-55182自v4.14.9起修复。四、拉取镜像用 轩辕镜像 加速拉取dockerpull docker.xuanyuan.run/falkordb/falkordb:latestUbuntu 24.04 实测latest: Pulling from falkordb/falkordb 4f4fb700ef54: Pull complete fa04bbe9fc8e: Pull complete 0330f12055c2: Pull complete 6795ca2d298c: Pull complete 8211d5969d2e: Pull complete 2f452c1ad809: Pull complete 19e7049df5a3: Pull complete 766331f05d2e: Pull complete bbe46012c3a6: Pull complete 7556589f74c9: Pull complete 02280df0d84b: Pull complete 80cf12396ee3: Pull complete 528dc8790f46: Pull complete 5f5a4bd80419: Pull complete 9861bb45faf6: Pull complete 83822391ea97: Pull complete 94d6ebf35d22: Pull complete 6c692a9fd741: Pull complete Digest: sha256:9042fdc4e53f5390ca5a3993aa71506523970efb40ffb9a98e6a4b1a9a4f8862 Status: Downloaded newer image for docker.xuanyuan.run/falkordb/falkordb:latest docker.xuanyuan.run/falkordb/falkordb:latestdockerimages docker.xuanyuan.run/falkordb/falkordb:latestIMAGE ID DISK USAGE CONTENT SIZE EXTRA docker.xuanyuan.run/falkordb/falkordb:latest 9042fdc4e53f 613MB 159MB生产把latest换成具体版本号Compose 与命令一并替换。五、Docker Compose 部署推荐工作目录/www/wwwroot/falkordb可改$HOME/falkordb。5.1 创建目录mkdir-p/www/wwwroot/falkordb/datachown-R$USER:$USER/www/wwwroot/falkordbcd/www/wwwroot/falkordb非 root 时给mkdir/chown加sudo。5.2 编写 docker-compose.ymlcatdocker-compose.ymlEOF services: falkordb: image: docker.xuanyuan.run/falkordb/falkordb:latest container_name: falkordb restart: unless-stopped ports: - 6379:6379 - 13300:3000 environment: TZ: Asia/Shanghai # 生产示例 # REDIS_ARGS: --requirepass 请换成强密码 --appendonly yes # FALKORDB_ARGS: THREAD_COUNT 4 volumes: - ./data:/var/lib/falkordb/data healthcheck: test: [CMD, redis-cli, ping] interval: 30s timeout: 10s retries: 3 start_period: 20s EOF项作用6379:6379协议口13300:3000Browser宿主机不占 3000./data → /var/lib/falkordb/data数据持久化5.3 启动与验证dockercompose up-ddockercomposepsdockercompose logs--tail50实测[] Running 2/2 ✔ Network falkordb_default Created ✔ Container falkordb Started NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS falkordb docker.xuanyuan.run/falkordb/falkordb:latest /var/lib/falkordb/b… falkordb 6 seconds ago Up 5 seconds (healthy) 0.0.0.0:6379-6379/tcp, [::]:6379-6379/tcp, 0.0.0.0:13300-3000/tcp, [::]:13300-3000/tcp日志关键行WARNING Memory overcommit must be enabled! ... sysctl vm.overcommit_memory1 Redis version8.6.3 ... Running modestandalone, port6379. graph Starting up FalkorDB version 4.20.1. Module graph loaded from /var/lib/falkordb/bin/falkordb.so Ready to accept connections tcp ▲ Next.js 16.2.9 - Network: http://0.0.0.0:3000 ✓ Ready in 0msdockercomposeexecfalkordb redis-cli PINGPONG浏览器打开http://服务器IP:13300本机则http://127.0.0.1:13300实测进入/login。5.4 生产密码与 AOF把environment/healthcheck改成environment:TZ:Asia/ShanghaiREDIS_ARGS:--requirepass ${FALKORDB_PASSWORD:-changeme} --appendonly yesFALKORDB_ARGS:THREAD_COUNT 4healthcheck:test:[CMD,redis-cli,-a,${FALKORDB_PASSWORD:-changeme},ping]interval:30stimeout:10sretries:3start_period:20sexportFALKORDB_PASSWORD请换成强密码dockercompose up-ddockercomposeexecfalkordb redis-cli-a$FALKORDB_PASSWORDPING不需要 Browser、只要更轻引擎时可改用falkordb/falkordb-server只映射6379可视化再另起falkordb-browser并用FALKORDB_URL指向 server见官方文档。六、浏览器登录与建图打开http://服务器IP:13300。6.1 登录选Manual Configuration字段填法未设密码Hostlocalhost同容器连引擎勿填局域网 IPPort6379不是 13300Username / Password留空勿填占位文案DefaultTLS关闭点Log in。已设--requirepass时只填 Password。6.2 欢迎向导顶栏应显示FalkorDB: v4.20.1或相近与localhost:6379。首次可弹出 Welcome 教程Next跟做或Skip Tutorial跳过。6.3 创建图左侧Select Graph旁点图名填MotoGP点Create your Graph。打不开页面时检查防火墙是否放行13300以及docker compose ps是否含13300-3000。七、Cypher 查询与画布确认已选中MotoGP。在顶部输入框写查询点RUN结果可在 Graph / Table / JSON 间切换。7.1 写入示例数据CREATE (:Rider {name:Valentino Rossi})-[:rides]-(:Team {name:Yamaha}), (:Rider {name:Dani Pedrosa})-[:rides]-(:Team {name:Honda}), (:Rider {name:Andrea Dovizioso})-[:rides]-(:Team {name:Ducati})左侧统计约为NODES 6、EDGES 3标签Rider/Team关系rides。7.2 查骑手MATCH (n:Rider) RETURN n7.3 查车队MATCH (n:Team) RETURN n7.4 查 rides 关系MATCH p()-[:rides]-() RETURN p可选用更宽查询拉出带name的实体画布如下。MATCH (e) WHERE e.name IS NOT NULL RETURN e UNION MATCH ()-[e]-() WHERE e.name IS NOT NULL RETURN e更多示例FalkorDB/demo。八、设置、UDF 与用户侧栏齿轮进Settings{ }进UDF Libraries。UDF可Load Lib/Flush Libs初次为空正常。Browser SettingsChat、Graph Info、Query Execution、User Experience可Replay Tutorial。Users默认用户defaultAdmin。生产按需Add UserACL 持久化见 FAQ。九、redis-cli 验证可选与 Browser 共用同一图名MotoGPdockercomposeexecfalkordb redis-cliGRAPH.QUERY MotoGP MATCH (r:Rider)-[:rides]-(t:Team) WHERE t.name Yamaha RETURN r.name, t.name GRAPH.QUERY MotoGP MATCH (r:Rider)-[:rides]-(t:Team {name:Ducati}) RETURN count(r)Pythonredis-pyimportredis rredis.StrictRedis(host127.0.0.1,port6379,decode_responsesTrue)print(r.execute_command(GRAPH.QUERY,MotoGP,MATCH (r:Rider)-[:rides]-(t:Team) WHERE t.name Yamaha RETURN r.name, t.name,))已设密码时客户端需带密码。十、备选docker run仅临时试玩或没有 Compose 时使用日常跟做仍用第五节。dockerrun-d\--namefalkordb\--restartunless-stopped\-p6379:6379\-p13300:3000\-v/www/wwwroot/falkordb/data:/var/lib/falkordb/data\-eTZAsia/Shanghai\docker.xuanyuan.run/falkordb/falkordb:latest带密码与 AOF加-e REDIS_ARGS--requirepass 请换成强密码 --appendonly yes。一次性试玩无持久化去掉-d/ 挂载加-it --rm。dockerexec-itfalkordb redis-cli PING与 Compose 容器重名时先docker compose down或换--name。十一、迁移 / 升级docker compose stop后备份data/拉取新标签并改 Composeimage:docker compose up -dPING Browser 抽查一张图异常则改回旧标签与备份生产钉版本号跨大版本先在预发验证。十二、常见问题 FAQQ16379 Connection refused看docker compose ps/logs端口冲突则改6380:6379。Q2打不开 :13300确认镜像是falkordb/falkordb含 Browser放行13300docker port falkordb应有13300→3000。Q3登录 Host / 密码怎么填同容器localhost6379未设密码则用户名密码留空。网页口13300库口6379。勿填局域网 IP勿把Default当账号。Q4日志里 overcommit / 未认证警告sysctl vm.overcommit_memory1持久化写入/etc/sysctl.conf。未设密码会提示接受任意 IP——实验室可接受生产必须--requirepass并限制暴露。Q5重启后数据没了确认挂载了/var/lib/falkordb/data建议--appendonly yes。见 Persistence。Q6ACL 用户重启丢失需--aclfile落在数据卷上并ACL SAVE。见 ACL Persistence。Q7和 Neo4j 工具通用吗否。协议是 Redis GRAPH.*请用 Redis 客户端、FalkorDB SDK 或内置 Browser。Q8如何确认模块已加载dockercomposeexecfalkordb redis-cli MODULE LIST十三、命令速查dockerpull docker.xuanyuan.run/falkordb/falkordb:latestcd/www/wwwroot/falkordbdockercompose up-ddockercomposepsdockercompose logs-f--tail100dockercomposeexecfalkordb redis-cli PING# 浏览器 http://服务器IP:13300dockercompose down十四、延伸阅读falkordb/falkordb 镜像页 · 标签列表Docker and Docker Compose · Persistence · BrowserGitHub · FalkorDB · demoopenCypher 属性图模型轩辕镜像使用手册总结Compose 拉起falkordb/falkordb:latest协议6379Browser13300容器内 3000。Browserlocalhost:6379登录 → 建图MotoGP→CREATE/MATCH看画布。数据落在/var/lib/falkordb/data生产加密码与 AOF并钉 ≥ v4.14.9 的版本。阅读原文轩辕镜像官方博客https://xuanyuan.cloud/blog/falkordb-docker-deploy