主题
fabric-x-committer · 快速开始
TIP
完整快速开始请见 docs/setup.md(README.md:12 指引)。本章只列源码与 Makefile 可验证的命令。
构建
来源:Makefile:323-376。
| 命令 | 行号 | 用途 |
|---|---|---|
make build | 323 | 构建所有 CMD(本地) |
make build-release | 327 | Linux 多架构(amd64 / arm64 / s390x) |
make build-image-% | 331 | 构建 Docker 镜像(test-node、release) |
make build-with-docker | 365 | 在 Docker 容器内构建 |
Docker 镜像
来源:docker/images/。
test_node 镜像
来源:docker/images/test_node/Dockerfile:1-72。
| 项 | 值 |
|---|---|
| 基础镜像 | postgres:18.3-alpine3.23(line 10) |
ENV CONFIGS_PATH | /root/config |
ENV ARTIFACTS_PATH | /root/artifacts |
ENV BINS_PATH | /root/bin |
| ENV 本地端点 | localhost 地址与端口(line 17-45) |
RUN loadgen make-artifacts | line 54(构建时生成创世块) |
EXPOSE | 7050 4001 2114 7001 2117 2110(line 57) |
镜像 tag 由 Makefile 决定:${image_namespace}/committer-test-node:${version},其中 image_namespace=docker.io/hyperledger(Makefile:348、Makefile:90)。
release 镜像
来源:docker/images/release/Dockerfile:1-59。
| 项 | 值 |
|---|---|
| 基础镜像 | registry.access.redhat.com/ubi9/ubi-minimal:9.6(line 10) |
| 非 root 用户 | UID 10001(line 24) |
| 二进制 COPY | ${SRC_BIN_PATH}/${TARGETOS}-${TARGETARCH}/${BIN}(line 30) |
| symlink | /bin/entrypoint → /bin/${BIN}(line 34) |
ENTRYPOINT | /bin/entrypoint(line 58) |
HEALTHCHECK | Dockerfile 未设置,仅以注释给出建议示例 healthcheck <service>(line 54-55),需在 compose / 编排层配置 |
启动一个服务
来源:cmd/committer/start_cmd.go:25-34、cmd/committer/config.go:17-21。
sh
committer start sidecar # 启动 Sidecar
committer start coordinator # 启动 Coordinator
committer start vc # 启动 Validator-Committer
committer start verifier # 启动 Verifier
committer start query # 启动 Query Service健康检查(cmd/committer/healthcheck_cmd.go:19-28):
sh
committer healthcheck <service>启动 loadgen
来源:cmd/loadgen/main.go:38-48。
sh
loadgen start [--only-namespace] [--only-workload]
loadgen make-artifacts测试目标(Makefile)
来源:Makefile:158-202。
| target | 行号 | 用途 |
|---|---|---|
test | 158 | 单元测试(不含集成、容器) |
test-package-% | 162 | 特定包 |
test-integration | 167 | 集成测试(排除 DB resiliency) |
test-integration-db-resiliency | 171 | DB 恢复性 |
test-container | 175 | 容器测试 |
test-core-db | 179 | 直接访问 DB 的组件 |
test-requires-db | 183 | 依赖 DB 层 |
test-no-db | 187 | 纯逻辑 |
test-all-db | 191 | core-db + requires-db |
test-cover | 195 | 覆盖率 |
cover-report | 199 | HTML 覆盖率 |
clean | 202 | 删 bin |
ci-local | 212 | 本地完整 CI;自动管理 PostgreSQL + YugabyteDB |
kill-test-docker | 207 | 杀 sc_test 测试容器 |
基准测试
来源:Makefile:220-245。
| target | 行号 |
|---|---|
bench-loadgen | 220 |
bench-dep | 224 |
bench-preparer | 228 |
bench-sign | 232 |
bench-sidecar | 236 |
bench-serialization | 240 |
bench-deliver | 244 |