如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
该 Docker 镜像专为 Apache Cassandra 测试场景设计,提供了一个预配置的环境,用于执行各种测试任务,包括单元测试、集成测试和性能测试。镜像基于官方 Apache Cassandra 构建,集成了必要的测试工具和依赖项,旨在简化测试流程并确保环境一致性。
4.1.1 拉取镜像
bashdocker pull apache/cassandra-testing:latest
4.1.2 启动单节点测试容器
bashdocker run -d --name cassandra-test \ -p 9042:9042 \ apache/cassandra-testing:latest
4.1.3 进入容器执行测试
bashdocker exec -it cassandra-test /bin/bash # 在容器内执行测试命令 cassandra-stress write n=10000 -node localhost
4.2.1 通过环境变量配置
bashdocker run -d --name cassandra-test \ -e CASSANDRA_VERSION=4.0.0 \ -e CASSANDRA_CLUSTER_NAME=TestCluster \ -e CASSANDRA_NUM_TOKENS=256 \ -e MAX_HEAP_SIZE=2G \ -e HEAP_NEWSIZE=512M \ apache/cassandra-testing:latest
4.2.2 挂载自定义配置文件
bashdocker run -d --name cassandra-test \ -v /path/to/cassandra.yaml:/etc/cassandra/cassandra.yaml \ -v /path/to/jvm.options:/etc/cassandra/jvm.options \ apache/cassandra-testing:latest
bashdocker run -d --name cassandra-test \ -p 7000:7000 \ -p 7001:7001 \ -p 7199:7199 \ -p 9042:9042 \ -p 9160:9160 \ -e CASSANDRA_CLUSTER_NAME=TestCluster \ -e CASSANDRA_DC=dc1 \ -e CASSANDRA_RACK=rack1 \ -v cassandra-data:/var/lib/cassandra \ -v cassandra-logs:/var/log/cassandra \ apache/cassandra-testing:latest
yamlversion: '3.8' services: cassandra-seed: image: apache/cassandra-testing:latest container_name: cassandra-seed environment: - CASSANDRA_CLUSTER_NAME=TestCluster - CASSANDRA_DC=dc1 - CASSANDRA_RACK=rack1 - CASSANDRA_SEEDS=cassandra-seed - CASSANDRA_NUM_TOKENS=256 - MAX_HEAP_SIZE=2G - HEAP_NEWSIZE=512M volumes: - seed-data:/var/lib/cassandra - seed-logs:/var/log/cassandra ports: - "9042:9042" healthcheck: test: ["CMD", "cqlsh", "-e", "describe keyspaces"] interval: 30s timeout: 10s retries: 5 cassandra-node1: image: apache/cassandra-testing:latest container_name: cassandra-node1 environment: - CASSANDRA_CLUSTER_NAME=TestCluster - CASSANDRA_DC=dc1 - CASSANDRA_RACK=rack1 - CASSANDRA_SEEDS=cassandra-seed - CASSANDRA_NUM_TOKENS=256 volumes: - node1-data:/var/lib/cassandra depends_on: cassandra-seed: condition: service_healthy cassandra-node2: image: apache/cassandra-testing:latest container_name: cassandra-node2 environment: - CASSANDRA_CLUSTER_NAME=TestCluster - CASSANDRA_DC=dc1 - CASSANDRA_RACK=rack1 - CASSANDRA_SEEDS=cassandra-seed - CASSANDRA_NUM_TOKENS=256 volumes: - node2-data:/var/lib/cassandra depends_on: cassandra-seed: condition: service_healthy volumes: seed-data: seed-logs: node1-data: node2-data:
| 环境变量 | 描述 | 默认值 |
|---|---|---|
CASSANDRA_VERSION | 指定 Cassandra 版本 | latest |
CASSANDRA_CLUSTER_NAME | 集群名称 | TestCluster |
CASSANDRA_SEEDS | 种子节点 IP 地址或主机名 | localhost |
CASSANDRA_LISTEN_ADDRESS | 监听地址 | 容器 IP |
CASSANDRA_RPC_ADDRESS | RPC 地址 | 0.0.0.0 |
CASSANDRA_DC | 数据中心名称 | dc1 |
CASSANDRA_RACK | 机架名称 | rack1 |
CASSANDRA_NUM_TOKENS | 每个节点的令牌数量 | 256 |
MAX_HEAP_SIZE | JVM 最大堆大小 | 1G |
HEAP_NEWSIZE | JVM 新生代大小 | 256M |
CASSANDRA_AUTO_BOOTSTRAP | 是否自动引导 | true |
TEST_MODE | 测试模式 (unit, integration, performance) | integration |
| 端口 | 用途 |
|---|---|
| 7000 | 节点间通信 |
| 7001 | SSL 节点间通信 |
| 7199 | JMX 监控 |
| 9042 | CQL 客户端端口 |
| 9160 | Thrift 客户端端口 |
bash# 启动容器并运行写性能测试 docker run --rm -it apache/cassandra-testing:latest \ cassandra-stress write n=100000 -rate threads=20 -node localhost
bash# 挂载本地测试代码并执行测试 docker run -it --rm \ -v $(pwd)/test-suite:/tests \ -e TEST_MODE=integration \ apache/cassandra-testing:latest \ /bin/bash -c "cd /tests && ./run-integration-tests.sh"
yamlcassandra-test: stage: test image: apache/cassandra-testing:latest services: - name: apache/cassandra-testing:latest alias: cassandra script: - wait-for-it cassandra:9042 -t 60 - cqlsh cassandra -e "CREATE KEYSPACE test WITH replication = {'class':'SimpleStrategy', 'replication_factor':1};" - cassandra-stress read n=1000 -node cassandra
docker volume prune 清理未使用的数据卷docker logs <container-id>,确认配置是否正确您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。



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