专属域名
文档搜索
轩辕助手
Run助手
邀请有礼
返回顶部
快速返回页面顶部
收起
收起工具栏

bitnami/consul Docker 镜像 - 轩辕镜像

consul
bitnami/consul
自动构建
Bitnami提供的Consul安全镜像,用于服务发现、配置管理及服务网格部署,具备安全加固特性。
10 收藏0 次下载activebitnami镜像
🚀专业版镜像服务,面向生产环境设计
中文简介版本下载
🚀专业版镜像服务,面向生产环境设计

Bitnami HashiCorp Consul 镜像文档

镜像概述和主要用途

关于 HashiCorp Consul

HashiCorp Consul 是一款用于在基础设施中发现和配置服务的工具,提供服务发现、配置管理和分段功能,支持多数据中心部署,是微服务架构中的关键组件。

Bitnami 镜像特点

Bitnami HashiCorp Consul 镜像是经过安全加固的容器化发行版,旨在简化 Consul 的部署和管理。该镜像遵循非 root 用户运行原则,提供最小化***面,并支持持久化存储、集群部署和灵活配置。

⚠️ 重要通知:Bitnami 镜像仓库即将变更

自 2025 年 8 月 28 日起,Bitnami 将调整其公共镜像仓库,推出Bitnami Secure Images(安全镜像) 计划,主要变更包括:

  • 社区用户首次可访问安全优化版容器镜像。
  • 逐步弃用非加固的 Debian 基础镜像,免费 tier 将仅保留少量加固镜像(仅 latest 标签),适用于开发环境。
  • 现有所有镜像(包括历史版本标签,如 2.50.0、10.6)将在两周内迁移至 docker.io/bitnamilegacy 仓库,不再接收更新。
  • 生产环境推荐使用 Bitnami Secure Images,包含加固容器、***面缩减、CVE 透明度(VEX/KEV)、SBOM 和企业支持。

更多详情见 Bitnami Secure Images 公告。

核心功能和特性

Consul 核心功能
  • 服务发现:自动注册和发现服务实例,支持健康检查。
  • 配置管理:集中存储和分发服务配置,动态更新。
  • 分段与安全:基于身份的服务网格功能,加密服务间通信。
  • 多数据中心:跨数据中心的服务发现和复制。
Bitnami 镜像特性
  • 非 root 容器:以 UID 1001 运行,降低特权***风险。
  • 安全加固:基于 Photon Linux 最小操作系统,减少***面。
  • 持久化支持:数据卷挂载确保配置和状态持久化。
  • 集群部署:简化多节点集群配置,支持自动加入集群。
  • 标准化配置:环境变量和配置文件两种配置方式,兼容 Bitnami 其他镜像。
  • 供应链安全:提供 SBOM、签名验证、CVE 透明度报告(VEX/KEV)。

使用场景和适用范围

  • 开发环境:快速搭建本地 Consul 服务,验证服务发现和配置逻辑。
  • 微服务架构:作为服务网格的核心组件,管理服务注册与发现。
  • 云原生部署:配合 Kubernetes 或 Docker Swarm,提供分布式服务协调。
  • 多团队协作:集中管理跨团队服务配置,避免配置冲突。
  • CI/CD 流水线:集成到自动化部署流程,动态调整服务配置。

详细的使用方法和配置说明

获取镜像
拉取官方镜像

推荐从 Docker Hub 拉取最新版安全镜像:

console
docker pull bitnami/consul:latest

如需特定版本,可指定标签(注意:2025 年 8 月后非 latest 标签将迁移至 bitnamilegacy 仓库):

console
docker pull bitnami/consul:[TAG]  # 例如 bitnami/consul:1.16.0
本地构建镜像

从源码构建(需替换 APP、VERSION、OPERATING-SYSTEM 占位符):

console
git clone [***]
cd bitnami/APP/VERSION/OPERATING-SYSTEM
docker build -t bitnami/consul:latest .
快速启动

使用 docker run 快速启动单节点 Consul:

console
docker run --name consul -p 8500:8500 bitnami/consul:latest

访问 http://localhost:8500 即可打开 Consul UI。

持久化数据

Consul 数据(配置、状态、Raft 日志)默认存储在 /bitnami,需挂载卷以避免容器删除后数据丢失:

Docker 命令
console
docker run -v /本地路径/consul-data:/bitnami bitnami/consul:latest
Docker Compose
yaml
version: '2'
services:
  consul:
    image: bitnami/consul:latest
    volumes:
      - /本地路径/consul-data:/bitnami  # 本地目录挂载
    # 或使用命名卷
    # volumes:
    #   - consul-data:/bitnami
volumes:
  consul-data:
    driver: local

注意:挂载的本地目录需确保 UID 1001 有读写权限,可通过 chown -R 1001:1001 /本地路径/consul-data 调整。

连接其他容器

通过 Docker 网络实现容器间通信,容器名作为 hostname。

手动创建网络(Docker 命令)
  1. 创建桥接网络:

    console
    docker network create consul-network --driver bridge
    
  2. 启动 Consul 节点并加入网络:

    console
    docker run --name consul-node1 --network consul-network bitnami/consul:latest
    
  3. 其他容器加入同一网络即可通过 consul-node1 访问 Consul。

Docker Compose 网络配置

自动创建网络并连接服务:

yaml
version: '2'
networks:
  consul-network:
    driver: bridge
services:
  consul:
    image: bitnami/consul:latest
    networks:
      - consul-network
    ports:  # 暴露常用端口
      - 8300:8300  # RPC 端口
      - 8301:8301/tcp  # LAN Serf 端口(TCP)
      - 8301:8301/udp  # LAN Serf 端口(UDP)
      - 8500:8500  # HTTP API/UI 端口
      - 8600:8600/tcp  # DNS 端口(TCP)
      - 8600:8600/udp  # DNS 端口(UDP)
部署 Consul 集群

通过 Docker Compose 快速搭建 3 节点 Consul 集群(生产环境建议使用 Helm Chart)。

完整 docker-compose.yml
yaml
version: '2'
services:
  consul-node1:  # 主节点(启用 UI)
    image: bitnami/consul:latest
    environment:
      - CONSUL_BOOTSTRAP_EXPECT=3  # 期望的集群节点数
      - CONSUL_CLIENT_LAN_ADDRESS=0.0.0.0  # 客户端绑定地址
      - CONSUL_DISABLE_KEYRING_FILE=true  # 禁用密钥环文件
      - CONSUL_RETRY_JOIN_ADDRESS=consul-node1  # 重试加入的节点地址
      - CONSUL_ENABLE_UI=true  # 启用 UI
    ports:
      - 8300:8300
      - 8301:8301/tcp
      - 8301:8301/udp
      - 8500:8500  # UI 端口
      - 8600:8600/tcp
      - 8600:8600/udp
    volumes:
      - consul-node1-data:/bitnami

  consul-node2:  # 从节点(禁用 UI)
    image: bitnami/consul:latest
    environment:
      - CONSUL_BOOTSTRAP_EXPECT=3
      - CONSUL_CLIENT_LAN_ADDRESS=0.0.0.0
      - CONSUL_DISABLE_KEYRING_FILE=true
      - CONSUL_RETRY_JOIN_ADDRESS=consul-node1  # 加入主节点
      - CONSUL_ENABLE_UI=false
    volumes:
      - consul-node2-data:/bitnami

  consul-node3:  # 从节点(禁用 UI)
    image: bitnami/consul:latest
    environment:
      - CONSUL_BOOTSTRAP_EXPECT=3
      - CONSUL_CLIENT_LAN_ADDRESS=0.0.0.0
      - CONSUL_DISABLE_KEYRING_FILE=true
      - CONSUL_RETRY_JOIN_ADDRESS=consul-node1
      - CONSUL_ENABLE_UI=false
    volumes:
      - consul-node3-data:/bitnami

volumes:
  consul-node1-data:
    driver: local
  consul-node2-data:
    driver: local
  consul-node3-data:
    driver: local

启动集群:

console
docker-compose up -d
配置说明
环境变量

可自定义环境变量

变量名描述默认值
CONSUL_RPC_PORT_NUMBERRPC 端口号8300
CONSUL_HTTP_PORT_NUMBERHTTP API/UI 端口号8500
CONSUL_HTTPS_PORT_NUMBERHTTPS 端口号(-1 表示禁用)-1
CONSUL_DNS_PORT_NUMBERDNS 端口号8600
CONSUL_AGENT_MODE代理模式(server 或 client)server
CONSUL_DISABLE_KEYRING_FILE禁用密钥环文件false
CONSUL_SERF_LAN_ADDRESSLAN Serf 绑定地址0.0.0.0
CONSUL_SERF_LAN_PORT_NUMBERLAN Serf 端口号8301
CONSUL_CLIENT_LAN_ADDRESS客户端 HTTP/DNS 绑定地址0.0.0.0
CONSUL_RETRY_JOIN_ADDRESS集群加入地址(LAN)127.0.0.1
CONSUL_RETRY_JOIN_WAN_ADDRESS跨数据中心加入地址(WAN)127.0.0.1
CONSUL_BIND_INTERFACE绑定网络接口(如 eth0)nil
CONSUL_BIND_ADDR绑定 IP 地址(覆盖接口配置)nil
CONSUL_ENABLE_UI启用 UItrue
CONSUL_BOOTSTRAP_EXPECT集群启动期望节点数(仅 server 模式)1
CONSUL_RAFT_MULTIPLIERRaft 选举超时乘数1
CONSUL_LOCAL_CONFIGJSON 格式的本地配置(覆盖默认)nil
CONSUL_GOSSIP_ENCRYPTION是否启用 Gossip 加密(yes/no)no
CONSUL_GOSSIP_ENCRYPTION_KEYGossip 加密密钥(Base64 编码 16 字节)nil
CONSUL_DATACENTER数据中心名称dc1
CONSUL_DOMAINDNS 域名consul
CONSUL_NODE_NAME节点名称nil(自动生成)
CONSUL_DISABLE_HOST_NODE_ID禁用基于主机的节点 IDtrue

只读环境变量(内部使用)

变量名描述值
CONSUL_BASE_DIR安装目录${BITNAMI_ROOT_DIR}/consul
CONSUL_CONF_DIR配置目录${CONSUL_BASE_DIR}/conf
CONSUL_CONF_FILE主配置文件${CONSUL_CONF_DIR}/consul.json
CONSUL_DATA_DIR数据存储目录${CONSUL_VOLUME_DIR}
CONSUL_VOLUME_DIR持久化卷挂载点/bitnami/consul
自定义配置文件

通过环境变量注入配置

使用 CONSUL_LOCAL_CONFIG 传入 JSON 配置,覆盖默认设置:

console
docker run -e CONSUL_LOCAL_CONFIG='{
  "datacenter": "us_west",
  "server": true,
  "enable_debug": true
}' --name consul bitnami/consul:latest

挂载配置文件

将自定义配置文件挂载到 /opt/bitnami/consul/conf 目录(容器内路径):

yaml
# docker-compose.yml 示例
services:
  consul:
    image: bitnami/consul:latest
    volumes:
      - ./local/conf:/opt/bitnami/consul/conf  # 本地配置目录挂载

配置文件需命名为 .json 或 .hcl,Consul 会按字母顺序加载所有文件。

配置 Gossip 加密

Gossip 加密用于保护集群内节点通信,需生成 16 字节 Base64 密钥:

  1. 生成密钥:

    console
    docker run --rm bitnami/consul:latest consul keygen
    

    输出示例:jH8t9eXz0aB1cD2eF3gH4iJ5kL6mN7oP8qR9sT0uV

  2. 启动容器时传入密钥:

    console
    docker run -e CONSUL_GOSSIP_ENCRYPTION=yes -e CONSUL_GOSSIP_ENCRYPTION_KEY=jH8t9eXz0aB1cD2eF3gH4iJ5kL6mN7oP8qR9sT0uV --name consul bitnami/consul:latest
    
FIPS 配置(仅安全镜像)

Bitnami 安全镜像支持 FIPS 模式,通过环境变量控制:

  • OPENSSL_FIPS:是否启用 OpenSSL FIPS 模式(yes/no,默认 yes)。
日志管理

容器日志输出到 stdout,可通过 docker logs 查看:

console
docker logs consul  # 查看单个容器日志
docker-compose logs consul  # Docker Compose 日志

配置日志驱动(如 JSON 文件、ELK 等):

console
docker run --log-driver json-file --log-opt max-size=10m --name consul bitnami/consul:latest
维护与升级
升级镜像
  1. 拉取最新镜像:

    console
    docker pull bitnami/consul:latest
    
  2. 停止并备份当前容器(假设使用卷挂载持久化):

    console
    docker stop consul
    rsync -a /path/to/consul-data /path/to/consul-data.bkp.$(date +%Y%m%d)  # 备份数据
    
  3. 删除旧容器并启动新容器:

    console
    docker rm consul
    docker run -v /path/to/consul-data:/bitnami --name consul bitnami/consul:latest
    

变更记录

重要版本变更
  • Debian 1.6.1-r6 / Oracle 1.6.1-r7:减小镜像体积,配置逻辑迁移至 Bash 脚本;环境变量重命名(兼容旧变量):

    • CONSUL_UI → CONSUL_ENABLE_UI
    • CONSUL_SERVER_MODE → CONSUL_AGENT_MODE
    • CONSUL_RETRY_JOIN → CONSUL_RETRY_JOIN_ADDRESS
  • 1.4.0-r16:迁移至非 root 用户(UID 1001),数据目录需确保该用户有读写权限。

Kubernetes 部署

推荐使用 Bitnami Helm Chart 部署到 Kubernetes:

console
helm repo add bitnami [***]
helm install my-consul bitnami/consul

详细文档见 Bitnami Consul Helm Chart。

问题反馈与贡献

  • 问题报告:通过 GitHub Issues 提交。
  • 贡献代码: Fork 仓库后提交 [Pull Request](https://
查看更多 consul 相关镜像 →
consul logo
consul
by library
官方
Consul是一种数据中心运行时工具,主要提供服务发现、配置管理和服务编排功能,能够助力分布式系统中的服务实现自动注册与发现、动态配置更新及服务生命周期协调管理,确保数据中心内各类服务高效、可靠地通信与协作,是构建现代化微服务架构和云原生应用的重要基础设施组件。
14591B+ pulls
上次更新:1 年前
hashicorp/consul logo
hashicorp/consul
by HashiCorp, an IBM Company
认证
基于当前版本自动构建的Consul镜像。有关使用详情,请参见README。
8950M+ pulls
上次更新:25 天前
bitnamicharts/consul logo
bitnamicharts/consul
by VMware
认证
Bitnami提供的HashiCorp Consul Helm chart,用于在Kubernetes集群上部署和管理Consul服务发现与配置工具,支持安全强化、Prometheus监控及自定义配置等功能。
500K+ pulls
上次更新:4 个月前
hashicorpdev/consul logo
hashicorpdev/consul
by hashicorpdev
HashiCorp Consul的开发镜像,对应https://github.com/hashicorp/consul仓库的每个提交。
11M+ pulls
上次更新:30 天前
hashicorppreview/consul logo
hashicorppreview/consul
by hashicorppreview
Consul是一款用于服务发现、配置及编排的工具,适用于分布式系统中的服务管理。
1M+ pulls
上次更新:25 天前
noenv/consul logo
noenv/consul
by noenv
Consul Docker镜像,提供服务发现、配置管理和分布式一致性功能,便于在容器环境中快速部署和运行Consul服务,支持健康检查、键值存储及多数据中心部署。
1100K+ pulls
上次更新:25 天前

轩辕镜像配置手册

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式

登录仓库拉取

通过 Docker 登录认证访问私有仓库

Linux

在 Linux 系统配置镜像服务

Windows/Mac

在 Docker Desktop 配置镜像

Docker Compose

Docker Compose 项目配置

K8s Containerd

Kubernetes 集群配置 Containerd

K3s

K3s 轻量级 Kubernetes 镜像加速

宝塔面板

在宝塔面板一键配置镜像

群晖

Synology 群晖 NAS 配置

飞牛

飞牛 fnOS 系统配置镜像

极空间

极空间 NAS 系统配置服务

爱快路由

爱快 iKuai 路由系统配置

绿联

绿联 NAS 系统配置镜像

威联通

QNAP 威联通 NAS 配置

Podman

Podman 容器引擎配置

Singularity/Apptainer

HPC 科学计算容器配置

其他仓库配置

ghcr、Quay、nvcr 等镜像仓库

专属域名拉取

无需登录使用专属域名

需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单

镜像拉取常见问题

轩辕镜像免费版与专业版有什么区别?

免费版仅支持 Docker Hub 访问,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。

轩辕镜像支持哪些镜像仓库?

专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等;免费版仅支持 docker.io。

流量耗尽错误提示

当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。

410 错误问题

通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。

manifest unknown 错误

先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。

镜像拉取成功后,如何去掉轩辕镜像域名前缀?

使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。

查看全部问题→

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

oldzhang的头像

oldzhang

运维工程师

Linux服务器

5

"Docker访问体验非常流畅,大镜像也能快速完成下载。"

轩辕镜像
镜像详情
...
bitnami/consul
官方博客Docker 镜像使用技巧与技术博客
热门镜像查看热门 Docker 镜像推荐
一键安装一键安装 Docker 并配置镜像源
提交工单
免费获取在线技术支持请 提交工单,官方QQ群:13763429 。
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
免费获取在线技术支持请提交工单,官方QQ群: 。
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
官方邮箱:点击复制邮箱
©2024-2026 源码跳动
官方邮箱:点击复制邮箱Copyright © 2024-2026 杭州源码跳动科技有限公司. All rights reserved.
轩辕镜像 官方专业版 Logo
轩辕镜像轩辕镜像官方专业版
首页个人中心搜索镜像
交易
充值流量我的订单
工具
提交工单镜像收录一键安装
Npm 源Pip 源Homebrew 源
帮助
常见问题
其他
关于我们网站地图

官方QQ群: 13763429