
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
本镜像基于官方 haproxy:<sameTag> 构建,继承了 HAProxy 的全部功能特性。HAProxy 是一款高性能的 TCP/HTTP 负载均衡器和代理服务器,主要用于在多个后端服务实例之间分发网络流量,实现流量调度、服务高可用保障和性能优化。适用于需要提升服务可用性、扩展服务处理能力的场景。
HAProxy 核心配置通过 haproxy.cfg 文件定义,主要包含以下配置段:
plaintext# 全局配置 global log /dev/log local0 info maxconn 4096 daemon # 默认配置 defaults mode http log global timeout connect 5000ms timeout client 50000ms timeout server 50000ms # 前端配置(接收客户端请求) frontend http_front bind *:80 default_backend http_back # 后端配置(定义后端服务集群) backend http_back balance roundrobin # 使用轮询算法 server web1 192.168.1.10:80 weight 3 # 后端服务1,权重3 server web2 192.168.1.11:80 weight 1 # 后端服务2,权重1 server web3 192.168.1.12:80 backup # 备份服务,仅在主服务全部异常时启用
基础运行(挂载自定义配置文件)
bashdocker run -d \ --name haproxy \ -p 80:80 \ -v /host/path/to/haproxy.cfg:/usr/local/etc/haproxy/haproxy.cfg:ro \ haproxy:<sameTag>
带监控页面的运行(暴露 stats 页面)
plaintextlisten stats bind *:1936 stats enable stats uri /haproxy-stats stats auth admin:admin123 # 监控页面认证
bashdocker run -d \ --name haproxy \ -p 80:80 \ -p 1936:1936 \ -v /host/path/to/haproxy.cfg:/usr/local/etc/haproxy/haproxy.cfg:ro \ haproxy:<sameTag>
yamlversion: '3' services: haproxy: image: haproxy:<sameTag> container_name: haproxy restart: always ports: - "80:80" # HTTP 服务端口 - "443:443" # HTTPS 服务端口(如需) - "1936:1936" # 监控页面端口 volumes: - ./haproxy.cfg:/usr/local/etc/haproxy/haproxy.cfg:ro - ./ssl:/etc/haproxy/ssl:ro # SSL 证书目录(如需) networks: - backend-network networks: backend-network: driver: bridge
修改配置文件后,无需重启容器,可通过以下命令实现热重载:
bashdocker exec haproxy haproxy -f /usr/local/etc/haproxy/haproxy.cfg -c # 验证配置 docker exec haproxy haproxy -f /usr/local/etc/haproxy/haproxy.cfg -sf $(cat /var/run/haproxy.pid) # 重载配置
本镜像本身不依赖固定环境变量,但可通过环境变量动态注入配置参数。例如,可结合 envsubst 实现配置文件模板化:
haproxy.template.cfg,包含变量占位符:plaintextbackend http_back balance roundrobin server web1 ${BACKEND_WEB1}:80 weight 3 server web2 ${BACKEND_WEB2}:80 weight 1
bashdocker run -d \ --name haproxy \ -e BACKEND_WEB1=192.168.1.10 \ -e BACKEND_WEB2=192.168.1.11 \ -v $(pwd)/haproxy.template.cfg:/tmp/haproxy.template.cfg \ haproxy:<sameTag> \ sh -c "envsubst < /tmp/haproxy.template.cfg > /usr/local/etc/haproxy/haproxy.cfg && haproxy -f /usr/local/etc/haproxy/haproxy.cfg"
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务
以下是 networkcloudmanager/haproxy 相关的常用 Docker 镜像,适用于 不同场景 等不同场景: