ArangoDB 是一个可扩展的图数据库系统,旨在从连接数据中更快地获取价值。它原生支持图存储、集成搜索引擎和 JSON 文档,通过单一查询语言实现多模型数据管理。ArangoDB 可在本地环境、云环境中运行,也可作为托管云服务 ArangoGraph Insights Platform 提供。
官方网站: arangodb.com
!https://raw.githubusercontent.com/docker-library/docs/f528ddab3310590b87273e2dbb75b96e081cadbe/arangodb/logo.png
同时存储数据和关系,即使在多级别连接和深度查询场景下也能提供更快的查询性能,支持传统关系型和文档数据库无法实现的深度洞察。
图中的每个节点都是 JSON 文档,具有灵活性、可扩展性,可轻松从现有文档数据库导入数据。
原生集成的跨平台索引、文本搜索和排序引擎,针对信息检索优化,兼顾速度和内存效率。
amd64 (https://hub.docker.com/r/amd64/arangodb/)arm64v8 (https://hub.docker.com/r/arm64v8/arangodb/)ArangoDB 适用于需要处理连接数据、实现高效图查询及多模型数据管理的场景,包括:
基本启动命令
运行以下命令启动一个 ArangoDB 实例:
consoledocker run -d -p 8529:8529 -e ARANGO_RANDOM_ROOT_PASSWORD=1 --name arangodb-instance amd64/arangodb
指定架构
Docker 默认根据主机 CPU 选择匹配的镜像架构。如需手动指定,可通过 --platform 参数:
linux/amd64linux/arm64/v8示例(ARM 架构):
consoledocker run -d -p 8529:8529 -e ARANGO_RANDOM_ROOT_PASSWORD=1 --name arangodb-instance --platform linux/arm64/v8 amd64/arangodb
首次启动时需指定服务器语言,支持两种方式:
环境变量 LANG
通过 -e 参数设置,例如瑞典语:
consoledocker run -d -p 8529:8529 -e ARANGO_RANDOM_ROOT_PASSWORD=1 -e LANG=sv --name arangodb-instance amd64/arangodb
挂载配置文件
创建包含 icu-language = sv(瑞典语)的 arangod.conf 文件,挂载到容器默认配置路径:
consoledocker run -d -p 8529:8529 -e ARANGO_RANDOM_ROOT_PASSWORD=1 -v /本地路径/arangod.conf:/etc/arangodb3/arangod.conf --name arangodb-instance amd64/arangodb
默认语言:ArangoDB v3.11 及更早版本默认
en_US,v3.12 及以上默认en_US_POSIX。
ArangoDB 默认监听端口 8529,镜像已包含 EXPOSE 8529。通过 -p 8529:8529 将端口暴露到主机:
consoledocker run -e ARANGO_RANDOM_ROOT_PASSWORD=1 -p 8529:8529 -d amd64/arangodb
通过环境变量(-e)指定认证方式,支持以下三种:
1. 随机生成 root 密码
consoledocker run -e ARANGO_RANDOM_ROOT_PASSWORD=1 amd64/arangodb
密码会打印到标准输出,可通过 docker logs <容器名> 查看。
2. 禁用认证(仅测试用)
consoledocker run -e ARANGO_NO_AUTH=1 amd64/arangodb
警告:生产环境禁用认证会暴露所有数据,确保 ArangoDB 不直接暴露在公网!
3. 指定自定义 root 密码
consoledocker run -e ARANGO_ROOT_PASSWORD=your_password amd64/arangodb
注意:以上认证方式仅适用于单服务器部署。集群环境需在系统启动后通过空密码 root 用户手动配置用户。
传递参数给 ArangoDB 服务器
在 docker run 命令末尾追加参数,例如查看帮助:
consoledocker run -e ARANGO_RANDOM_ROOT_PASSWORD=1 amd64/arangodb --help
运行其他工具(如 ArangoShell)
直接指定工具名称作为命令:
consoledocker run -it amd64/arangodb arangosh --server.database myDB
在运行中的容器内执行命令
consoledocker ps
docker exec 执行命令(如 ArangoShell):
consoledocker exec -it <容器名/ID> arangosh
通过环境变量限制内存和 CPU 使用:
内存限制
ARANGODB_OVERRIDE_DETECTED_TOTAL_MEMORY:覆盖系统自动检测的总内存,支持单位 G(2^30)、M(2^20)、K(2^10)。
示例(限制为 64GB):
consoledocker run -e ARANGODB_OVERRIDE_DETECTED_TOTAL_MEMORY=64G amd64/arangodb
CPU 核心限制
ARANGODB_OVERRIDE_DETECTED_NUMBER_OF_CORES:覆盖系统自动检测的 CPU 核心数。
示例(限制为 4 核):
consoledocker run -e ARANGODB_OVERRIDE_DETECTED_NUMBER_OF_CORES=4 amd64/arangodb
通过环境变量 ARANGO_STORAGE_ENGINE 指定(如 mmfiles 或 rocksdb):
consoledocker run -e ARANGO_STORAGE_ENGINE=rocksdb amd64/arangodb
容器内默认卷路径:
/var/lib/arangodb3/var/lib/arangodb3-apps查看所有卷:
consoledocker inspect --format "{{ .Config.Volumes }}" amd64/arangodb
1. 使用主机目录挂载
将容器卷映射到主机目录(示例路径 /tmp/arangodb,生产环境需替换为持久路径):
consolemkdir /tmp/arangodb docker run -d -p 8529:8529 -e ARANGO_RANDOM_ROOT_PASSWORD=1 \ -v /tmp/arangodb:/var/lib/arangodb3 \ amd64/arangodb
2. 使用数据容器
创建专用数据容器:
consoledocker create --name arangodb-persist amd64/arangodb true
使用数据容器启动 ArangoDB:
consoledocker run -d -p 8529:8529 -e ARANGO_RANDOM_ROOT_PASSWORD=1 \ --volumes-from arangodb-persist \ amd64/arangodb
轻量级数据容器可使用
busybox或alpine,需显式指定卷路径:consoledocker run -d --name arangodb-persist -v /var/lib/arangodb3 busybox true
exec 形式包装 CMD,确保入口脚本正常执行引导逻辑。/docker-entrypoint-initdb.d/ 目录中放置初始化文件:
*.sh:Bash 脚本,会自动执行。*.js:ArangoShell 脚本,可通过 ARANGOSH_ARGS 环境变量指定额外参数。dumps/:存放 arangodump 生成的备份,启动时自动通过 arangorestore 恢复。ArangoDB 包含第三方软件,其许可信息见 https://github.com/arangodb/arangodb/blob/devel/LICENSES-OTHER-COMPONENTS.md%E3%80%82
使用本镜像需确保符合所有包含软件的许可条款,详细许可信息可参考 https://github.com/docker-library/repo-info/tree/master/repos/arangodb%E3%80%82
维护者:https://github.com/arangodb/arangodb-docker
问题反馈:https://github.com/arangodb/arangodb-docker/issues
获取帮助:Docker Community Slack、Server Fault、Unix & Linux、Stack Overflow
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
docker search 限制
站内搜不到镜像
离线 save/load
插件要用 plugin install
WSL 拉取慢
安全与 digest
新手拉取配置
镜像合规机制
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务