本镜像为HashiCorp***提供的Vault Enterprise FIPS Docker镜像,用于容器化部署Vault企业版(符合FIPS标准)。
本HashiCorp企业软件仅允许已与HashiCorp或其授权经销商签订有效许可协议的客户使用。未获得有效许可的用户不得下载或使用本软件。所有使用行为均受许可协议条款约束,其他所有权利均明确保留。
软件许可条款(如Mozilla Public License 2.0、Business Source License等)、IBM国际程序许可协议(适用于评估用途的IBM国际评估程序许可协议、适用于Alpha/Beta版本的IBM国际早期发布程序许可协议)及相关许可信息(可通过IBM条款页面获取)构成本软件使用的约束条件。若下载包中的许可文件与上述IBM许可存在冲突,以IBM相关条款为准。安装或使用本软件即表示您接受这些条款;如不接受,请勿使用。
Vault是一款用于安全访问机密的工具,机密包括API密钥、密码、证书等需严格控制访问的敏感信息。其核心功能包括:
/vault/logs:用于存储持久化审计日志(需启用file审计后端并指定此目录下的路径)。/vault/file:用于file数据存储插件的持久化数据(需在Vault配置中启用file存储后端)。/vault/config目录下的HCL或JSON文件会被自动加载(可通过挂载卷或构建新镜像添加配置文件)。VAULT_LOCAL_CONFIG环境变量传入JSON格式配置。适用于快速搭建Vault开发环境,使用开发模式(内存存储、自动 unseal)进行功能测试和集成验证。注意:开发模式仅用于开发,禁止用于生产环境。
需配合持久化存储(如分布式存储后端)、TLS加密、身份验证配置及编排工具(如Kubernetes、OpenShift)实现高可用部署。生产环境中禁止使用开发模式及file存储后端(单机存储,可靠性低)。
docker run hashicorp/vault status等效于在容器内执行vault status。server子命令时,入口脚本会添加特殊配置;其他命令则通过dumb-init执行。setcap配置Vault需锁定内存以防止敏感数据交换到磁盘,因此启动容器时必须添加--cap-add=IPC_LOCK参数。由于Vault二进制以非root用户运行,容器通过setcap赋予二进制内存锁定权限。部分Docker存储插件(如AUFS)可能导致setcap失败,此时可通过设置SKIP_SETCAP环境变量(非空值)禁用内存锁定。
console$ docker run --cap-add=IPC_LOCK -d --name=dev-vault hashicorp/vault
VAULT_DEV_ROOT_TOKEN_ID:设置初始root令牌ID。VAULT_DEV_LISTEN_ADDRESS:设置开发服务器监听地址(默认0.0.0.0:8200)。console$ docker run --cap-add=IPC_LOCK -e 'VAULT_DEV_ROOT_TOKEN_ID=myroot' -e 'VAULT_DEV_LISTEN_ADDRESS=0.0.0.0:1234' hashicorp/vault
以下命令启动带file存储后端、禁用TLS的Vault服务器(生产环境需启用TLS并使用分布式存储):
console$ docker run --cap-add=IPC_LOCK \ -e 'VAULT_LOCAL_CONFIG={"storage": {"file": {"path": "/vault/file"}}, "listener": [{"tcp": {"address": "0.0.0.0:8200", "tls_disable": true}}], "default_lease_ttl": "168h", "max_lease_ttl": "720h", "ui": true}' \ -p 8200:8200 \ hashicorp/vault server
file存储后端路径/vault/file,默认租约168小时(7天),最大租约720小时(30天),启用UI。--cap-add=IPC_LOCK为内存锁定必需参数;生产环境若禁用内存锁定,需在配置中添加"disable_mlock": true。通过挂载卷将配置文件添加到/vault/config目录,Vault会自动加载该目录下的HCL/JSON文件:
console$ docker run --volume /本地配置目录:/vault/config ...
通过VAULT_LOCAL_CONFIG传入JSON配置,该配置会被写入/vault/config/local.json并加载:
console$ docker run -e 'VAULT_LOCAL_CONFIG={"listener": [{"tcp": {"address": "0.0.0.0:8200", "tls_disable": true}}]}' ...
支持通过环境变量设置重定向和集群地址使用的容器内网络接口:
VAULT_REDIRECT_INTERFACE:指定用于重定向地址的接口(如eth0),Vault会使用该接口的IP地址。VAULT_CLUSTER_INTERFACE:指定用于集群地址的接口(如eth0),Vault会使用该接口的IP地址。| 环境变量 | 作用 | 取值说明 | 默认值 |
|---|---|---|---|
SKIP_SETCAP | 禁用内存锁定(当setcap失败时) | 非空值(如true) | 未设置(启用) |
VAULT_LOCAL_CONFIG | 传入JSON格式的Vault配置 | JSON字符串 | 未设置 |
VAULT_DEV_ROOT_TOKEN_ID | 开发模式下设置初始root令牌ID | 任意字符串 | 自动生成 |
VAULT_DEV_LISTEN_ADDRESS | 开发模式下设置服务器监听地址 | IP:端口(如0.0.0.0:8200) | 0.0.0.0:8200 |
VAULT_REDIRECT_INTERFACE | 指定用于重定向地址的容器内网络接口 | 接口名(如eth0) | 未设置 |
VAULT_CLUSTER_INTERFACE | 指定用于集群地址的容器内网络接口 | 接口名(如eth0) | 未设置 |
| 配置路径 | 作用 | 示例值 |
|---|---|---|
storage.file.path | file存储后端的数据路径(需对应/vault/file卷) | /vault/file |
listener.tcp.address | TCP监听器地址 | 0.0.0.0:8200 |
listener.tcp.tls_disable | 是否禁用TLS(生产环境必须设为false) | true(仅开发) |
default_lease_ttl | 默认租约有效期 | 168h(7天) |
max_lease_ttl | 最大租约有效期 | 720h(30天) |
disable_mlock | 禁用内存锁定(生产环境不推荐) | false(推荐启用) |

来自真实用户的反馈,见证轩辕镜像的优质服务
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
在 Linux 系统配置镜像加速服务
在 Docker Desktop 配置镜像加速
Docker Compose 项目配置加速
Kubernetes 集群配置 Containerd
在宝塔面板一键配置镜像加速
Synology 群晖 NAS 配置加速
飞牛 fnOS 系统配置镜像加速
极空间 NAS 系统配置加速服务
爱快 iKuai 路由系统配置加速
绿联 NAS 系统配置镜像加速
QNAP 威联通 NAS 配置加速
Podman 容器引擎配置加速
HPC 科学计算容器配置加速
ghcr、Quay、nvcr 等镜像仓库
无需登录使用专属域名加速
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429