
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
bb(Building Blocks)是一个工具,可模拟基于微服务的云原生面向服务架构的许多典型场景。
bb发布单个容器镜像:buoyantio/bb:v0.0.5。容器实例通过protobuf定义的接口进行消息交互,可灵活组合成各类服务架构。
需先构建适用于本地环境的二进制文件:
从仓库根目录执行构建命令:
bash$ mkdir -p target && go build -o target/bb .
二进制文件将生成在target目录下(注意:非Linux环境构建的二进制可能无法在Docker或Kubernetes中使用)。
两服务交互示例:
bash$ target/bb terminus --grpc-server-port 9090 --response-text BANANA
bash$ target/bb point-to-point-channel --grpc-downstream-server localhost:9090 --h1-server-port 8080
bash$ curl localhost:8080 {"requestUid":"in:http-sid:point-to-point-channel-grpc:-1-h1:8080-387107000","payload":"BANANA"}
bb的主要应用场景是在Kubernetes集群中创建复杂环境,以下以Minikube为例说明部署步骤:
确保Minikube运行:
bash$ minikube status minikube: Running cluster: Running kubectl: Correctly Configured: pointing to minikube-vm at 192.168.99.100
配置Docker环境变量以使用Minikube镜像仓库:
bash$ eval "$(minikube docker-env)"
构建bb Docker镜像:
bash$ bin/docker-build-bb.sh Sending build context to Docker daemon 136.7MB Step 1/6 : FROM buoyantio/base:2017-10-30.01 ---> 14aa74f25501 Step 2/6 : RUN apt-get update [...] Removing intermediate container f4f571b01dd8 Successfully built e6d76c5df612 Successfully tagged buoyantio/bb:v0.0.5
验证镜像:
bash$ docker run buoyantio/bb:v0.0.5
应输出工具使用信息,确认镜像正常。
部署示例应用:
bash$ kubectl apply -f examples/bb-readme/application.yaml
bash$ curl `minikube -n bb-readme service bb-readme-gateway-svc --url` {"requestUid":"in:http-sid:point-to-point-channel-grpc:-1-h1:8080-66349706","payload":"BANANA"}
可用命令
broadcast-channel:将请求转发至所有下游服务help:查看命令帮助信息http-egress:接收请求并向指定URL发起HTTP(S)调用,返回响应体point-to-point-channel:将请求转发至唯一的下游服务terminus:接收请求并返回预定义响应全局标志
| 标志 | 描述 | 默认值 |
|---|---|---|
--downstream-timeout duration | 下游连接和请求的超时时间 | 1m0s |
--fire-and-forget | 联系下游服务时不等待响应 | - |
--grpc-downstream-server strings | gRPC下游服务器列表(hostname:port),可重复指定 | - |
--grpc-proxy string | gRPC请求路由代理 | - |
--grpc-server-port int | gRPC服务器绑定端口 | -1 |
--h1-downstream-server strings | HTTP 1.1下游服务器列表(protocol://hostname:port),可重复指定 | - |
--h1-server-port int | HTTP 1.1服务器绑定端口 | -1 |
-h, --help | 显示帮助信息 | - |
--id string | 容器标识符 | - |
--log-level string | 日志级别(panic/fatal/error/warn/info/debug) | info |
--percent-failure int | 自动失败的请求百分比 | - |
--sleep-in-millis int | 处理请求前的等待毫秒数 | - |
--terminate-after int | 处理指定请求数后终止进程 | - |
使用bb [command] --help可查看各命令的详细说明。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务