如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
Apache Cassandra是一款开源的分布式宽列存储NoSQL数据库管理系统,专为处理大规模结构化数据而设计。其核心定位是提供高可用性、线性可扩展性和容错能力,适用于需要在分布式环境中存储和管理海量数据的场景。该Docker镜像封装了Apache Cassandra的运行环境,简化了部署流程,支持快速搭建单节点或多节点集群,适用于开发、测试及生产环境。
采用无中心节点的分布式设计,数据自动分片并分布在多个节点,避免单点故障,支持集群动态扩缩容。
基于列族(Column Family)的数据模型,支持动态列扩展,适合存储半结构化数据,兼具关系型数据库的结构定义和NoSQL的灵活性。
通过副本机制(默认3副本)确保数据冗余,单个节点故障不影响集群可用性,支持自动故障检测和恢复。
集群性能随节点数量增加呈线性增长,可通过添加节点轻松扩展存储容量和处理能力。
采用基于Gossip协议的分布式一致性模型,支持可调的一致性级别(如ONE、QUORUM、ALL),平衡可用性与数据一致性。
原生支持跨数据中心部署,可配置数据副本跨区域分布,提升灾难恢复能力和全球访问性能。
优化写入路径,支持高吞吐量的写入操作,适合日志收集、物联网数据采集等写入密集型场景。
bashdocker run -d \ --name cassandra-node1 \ -p 9042:9042 \ # CQL客户端端口 -p 7000:7000 \ # 节点间通信端口 -e CASSANDRA_CLUSTER_NAME="MyCassandraCluster" \ # 集群名称 -e CASSANDRA_NODE_NAME="node1" \ # 节点名称 -v cassandra-data:/var/lib/cassandra \ # 数据持久化卷 cassandra:latest
yamlversion: '3' services: cassandra-seed: image: cassandra:latest container_name: cassandra-seed ports: - "9042:9042" environment: - CASSANDRA_CLUSTER_NAME=MyCluster - CASSANDRA_NODE_NAME=seed-node - CASSANDRA_SEEDS=cassandra-seed # 种子节点(自身) - CASSANDRA_LISTEN_ADDRESS=cassandra-seed # 监听地址(容器名) - CASSANDRA_RPC_ADDRESS=0.0.0.0 # 允许外部RPC连接 volumes: - seed-data:/var/lib/cassandra cassandra-node2: image: cassandra:latest container_name: cassandra-node2 depends_on: - cassandra-seed environment: - CASSANDRA_CLUSTER_NAME=MyCluster - CASSANDRA_NODE_NAME=node2 - CASSANDRA_SEEDS=cassandra-seed # 连接种子节点加入集群 - CASSANDRA_LISTEN_ADDRESS=cassandra-node2 - CASSANDRA_RPC_ADDRESS=0.0.0.0 volumes: - node2-data:/var/lib/cassandra volumes: seed-data: node2-data:
环境变量配置
| 环境变量 | 描述 | 默认值 |
|---|---|---|
CASSANDRA_CLUSTER_NAME | 集群名称 | Test Cluster |
CASSANDRA_NODE_NAME | 节点名称 | 容器主机名 |
CASSANDRA_SEEDS | 种子节点IP/主机名(集群发现入口) | 容器IP |
CASSANDRA_LISTEN_ADDRESS | 节点间通信监听地址 | 0.0.0.0 |
CASSANDRA_RPC_ADDRESS | CQL客户端RPC监听地址 | 0.0.0.0 |
CASSANDRA_BROADCAST_ADDRESS | 对外广播地址(跨主机集群需配置) | 容器IP |
CASSANDRA_REPLICATION_FACTOR | 默认副本数(单数据中心) | 1 |
端口映射说明
| 端口 | 用途 | 备注 |
|---|---|---|
| 7000 | 节点间通信(非SSL) | 集群内节点发现与数据同步 |
| 7001 | 节点间通信(SSL) | 启用SSL时使用 |
| 9042 | CQL客户端端口 | cqlsh、应用程序连接端口 |
| 9160 | Thrift RPC端口(已过时) | 仅兼容旧版客户端 |
为避免容器删除导致数据丢失,需通过Docker卷挂载数据目录:
bash# 创建命名卷(推荐) docker volume create cassandra-data # 运行容器时挂载卷 docker run -d \ --name cassandra \ -v cassandra-data:/var/lib/cassandra \ # 数据存储目录 -v cassandra-config:/etc/cassandra \ # 配置文件目录(可选) cassandra:latest
使用cqlsh客户端连接运行中的容器:
bash# 进入容器内部执行cqlsh docker exec -it cassandra-node1 cqlsh # 或从外部通过9042端口连接(需本地安装cqlsh) cqlsh <容器IP> 9042
如需修改cassandra.yaml配置(如调整缓存大小、超时时间等),可通过卷挂载自定义配置文件:
bashdocker run -d \ --name cassandra \ -v /host/path/to/custom-cassandra.yaml:/etc/cassandra/cassandra.yaml \ cassandra:latest
关键配置项:
seed_provider:种子节点列表(集群发现)data_file_directories:数据文件存储路径commitlog_directory:提交日志路径read_request_timeout_in_ms:读请求超时时间(默认5000ms)以下是 rook/cassandra 相关的常用 Docker 镜像,适用于 不同场景 等不同场景:
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。


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