如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
本仓库包含用于通用用途和OpenShift的Cassandra镜像的Dockerfile。目前仅提供基于CentOS的镜像,该CentOS镜像可在https://hub.docker.com/r/centos/cassandra-3-centos7/%E4%B8%8A%E8%8E%B7%E5%8F%96%EF%BC%8C%E9%95%9C%E5%83%8F%E5%90%8D%E4%B8%BA%60centos/cassandra-3-centos7%60%E3%80%82
该容器镜像提供了Cassandra守护进程和客户端应用的容器化打包。Cassandra服务器守护进程接受客户端连接,并代表客户端提供对Cassandra数据库内容的访问。有关Cassandra项目的更多信息,请访问项目网站([***]
假设您使用centos/cassandra-3-centos7镜像。如果只需设置必填环境变量并将数据库存储在主机文件系统的/home/user/database目录中,执行以下命令:
$ docker run -d -e CASSANDRA_ADMIN_PASSWORD=<password> -v /home/user/database:/var/opt/rh/sclo-cassandra3/lib/cassandra:Z centos/cassandra-3-centos7
该镜像支持以下环境变量,您可以在初始化时通过-e VAR=VALUE参数传递给Docker run命令进行设置。
| 变量名 | 描述 |
|---|---|
| CASSANDRA_ADMIN_PASSWORD | 管理员用户的密码 |
以下环境变量会影响Cassandra配置文件,均为可选参数。
| 变量名 | 描述 | 默认值 |
|---|---|---|
| CASSANDRA_CLUSTER_NAME | 集群名称 | 'Test Cluster' |
| CASSANDRA_DISK_OPTIMIZATION_STRATEGY | 磁盘读取优化策略 | ssd |
| CASSANDRA_ENDPOINT_SNITCH | Cassandra使用snitch定位节点和路由请求 | SimpleSnitch |
| CASSANDRA_NUM_TOKENS | 定义随机分配给此节点的令牌数量 | 256 |
| CASSANDRA_RPC_ADDRESS | 客户端连接的监听地址 | ' ' |
| CASSANDRA_KEY_CACHE_SIZE_IN_MB | 键缓存的最大内存大小(MB) | ' ' |
| CASSANDRA_CONCURRENT_READS | 允许操作在栈中排队足够低,以便操作系统和驱动器可以重新排序它们 | 32 |
| CASSANDRA_CONCURRENT_WRITES | Cassandra中的写入很少受I/O限制,因此理想的并发写入数取决于节点上的CPU核心数。推荐值为8×CPU核心数 | 32 |
| CASSANDRA_MEMTABLE_ALLOCATION_TYPE | Cassandra分配和管理memtable内存的方法 | 'heap_buffers' |
| CASSANDRA_MEMTABLE_CLEANUP_THRESHOLD | 用于自动刷新memtable的比率 | 0.5 |
| CASSANDRA_MEMTABLE_FLUSH_WRITERS | memtable刷新写入线程数 | 1 |
| CASSANDRA_CONCURRENT_COMPACTORS | 允许在节点上同时运行的并发压缩进程数 | ' ' |
| CASSANDRA_COMPACTION_THROUGHPUT_MB_PER_SEC | 限制实例的压缩吞吐量(MB/秒) | 16 |
| CASSANDRA_COUNTER_CACHE_SIZE_IN_MB | 计数器缓存的最大内存大小(MB) | ' ' |
| CASSANDRA_INTERNODE_COMPRESSION | 控制节点间流量是否压缩 | all |
| CASSANDRA_GC_WARN_THRESHOLD_IN_MS | 任何超过此时间间隔的GC暂停都会以WARN级别记录 | 1000 |
| CASSANDRA_AUTO_BOOTSTRAP | 使新(非种子)节点自动迁移正确的数据到自身 | true |
有关每个变量的更多详细信息,请参见:[***]
您还可以通过-v /host:/container标志向Docker传递以下挂载点。
| 卷挂载点 | 描述 |
|---|---|
| /var/opt/rh/sclo-cassandra3/lib/cassandra | Cassandra数据目录 |
注意:将主机目录挂载到容器中时,确保挂载的目录具有适当的权限,且目录的所有者和组与容器内运行的用户UID或名称匹配。
默认情况下,Cassandra使用7000端口进行集群通信(启用SSL时为7001),9042端口用于原生协议客户端,7199端口用于JMX。节点间通信和原生协议端口可在Cassandra配置文件(cassandra.yaml)中配置。JMX端口可在cassandra-env.sh中通过JVM选项配置。所有端口均为TCP端口。
参见[***]
有关硬件要求的更多信息,请参见[***]
允许为Cassandra服务器使用自定义配置文件。
要在容器中使用自定义配置文件,需将其挂载到/etc/opt/rh/sclo-cassandra3/cassandra/cassandra.yaml。例如,要使用存储在/home/user目录中的配置文件,可在docker run命令中使用以下选项:-v /home/user/cassandra.yaml:/etc/opt/rh/sclo-cassandra3/cassandra/cassandra.yaml:Z。
要配置多个JVM选项,需将jvm.options文件挂载到容器中。例如,要使用存储在/home/user目录中的配置文件,可在docker run命令中使用以下选项:-v /home/user/jvm.options:/etc/opt/rh/sclo-cassandra3/cassandra/jvm.options:Z。
容器中的Cassandra守护进程日志输出到标准输出,因此日志可在容器日志中查看。可通过以下命令检查日志:
docker logs <container>
此容器镜像的Dockerfile和其他源代码可在https://github.com/sclorg/cassandra-container%E8%8E%B7%E5%8F%96%E3%80%82%E5%9C%A8%E8%AF%A5%E4%BB%93%E5%BA%93%E4%B8%AD%EF%BC%8CCentOS%E7%9A%84Dockerfile%E5%90%8D%E4%B8%BADockerfile%EF%BC%8CRHEL%E7%9A%84Dockerfile%EF%BC%88%E5%BC%80%E5%8F%91%E4%B8%AD%EF%BC%89%E5%90%8D%E4%B8%BADockerfile.rhel7%E3%80%82
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。

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