轩辕镜像 官方专业版
轩辕镜像
专业版
轩辕镜像 官方专业版
轩辕镜像
专业版
首页个人中心搜索镜像
交易
充值流量¥8起我的订单
文档
工具
提交工单页面收录
scylla

scylladb/scylla

scylladb

Scylla是一款高度可扩展、最终一致性的分布式分区行数据库,适用于大规模数据存储与访问场景。

174 次收藏下载次数: 0状态:社区镜像维护者:scylladb仓库类型:镜像最近更新:8 天前
让 AI 帮你使用轩辕镜像? · 展开查看说明 · 点击收起说明

如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。

只需在 AI 对话中先发送下面这段话即可:

请先阅读并遵守:https://xuanyuan.cloud/agents.md

未读文档前不要生成 pull 命令或排错方案。

查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。

DockerHub 官方简介
轩辕镜像中文简介
下载命令
镜像标签列表与下载命令
轩辕镜像,让镜像更快,让人生更轻。
点击查看

What is ScyllaDB ?

ScyllaDB is a high-performance NoSQL database optimized for speed and scalability. It is designed to efficiently handle large volumes of data with minimal latency, making it ideal for data-intensive applications.

ScyllaDB is distributed under the https://github.com/scylladb/scylladb/blob/master/LICENSE-ScyllaDB-Source-Available.md.

http://www.scylladb.com/

Quick start

To startup a Scylla single-node cluster in developer mode execute:

console
$ docker run --name some-scylla --hostname some-scylla -d scylladb/scylla --smp 1

This command will start a Scylla single-node cluster in developer mode (see --developer-mode 1) limited by a single CPU core (see --smp). Production grade configuration requires tuning a few kernel parameters such that limiting number of available cores (with --smp 1) is the simplest way to go.

Multiple cores requires setting a proper value to the /proc/sys/fs/aio-max-nr. On many non production systems it will be equal to 65K. The formula to calculate proper value is:

Available AIO on the system - (request AIO per-cpu * ncpus) =
aio_max_nr - aio_nr < (reactor::max_aio + detect_aio_poll + reactor_backend_aio::max_polls) * cpu_cores =
aio_max_nr - aio_nr < (1024 + 2 + ***) * cpu_cores =
aio_max_nr - aio_nr < *** * cpu_cores

where

reactor::max_aio = max_aio_per_queue * max_queues,
max_aio_per_queue = 128,
max_queues = 8.

How to use this image

Start a scylla server instance

console
$ docker run --name some-scylla --hostname some-scylla -d scylladb/scylla

Run nodetool utility

console
$ docker exec -it some-scylla nodetool status
Datacenter: datacenter1
=======================
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
--  Address     Load       Tokens  Owns (effective)  Host ID                               Rack
UN  172.17.0.2  125.51 KB  256     100.0%            c9155121-786d-44f8-8667-a8b915b95665  rack1

Run cqlsh utility

console
$ docker exec -it some-scylla cqlsh
Connected to Test Cluster at 172.17.0.2:9042.
[cqlsh 5.0.1 | Cassandra 2.1.8 | CQL spec 3.2.1 | Native protocol v3]
Use HELP for help.
cqlsh>

Make a cluster

console
$ docker run --name some-scylla2  --hostname some-scylla2 -d scylladb/scylla --seeds="$(docker inspect --format='{{ .NetworkSettings.IPAddress }}' some-scylla)"

Make a cluster with Docker Compose

First, create a docker-compose.yml file with the following contents:

yaml
version: '3'

services:
  some-scylla:
    image: scylladb/scylla
    container_name: some-scylla

  some-scylla2:
    image: scylladb/scylla
    container_name: some-scylla2
    command: --seeds=some-scylla

  some-scylla3:
    image: scylladb/scylla
    container_name: some-scylla3
    command: --seeds=some-scylla

Then, launch the 3-node cluster as follows:

docker-compose up -d

Check scylla logs

console
$ docker logs some-scylla | tail
INFO  2016-08-04 06:57:40,836 [shard 5] database - Setting compaction strategy of system_traces.events to SizeTieredCompactionStrategy
INFO  2016-08-04 06:57:40,836 [shard 3] database - Setting compaction strategy of system_traces.events to SizeTieredCompactionStrategy
INFO  2016-08-04 06:57:40,836 [shard 1] database - Setting compaction strategy of system_traces.events to SizeTieredCompactionStrategy
INFO  2016-08-04 06:57:40,836 [shard 2] database - Setting compaction strategy of system_traces.events to SizeTieredCompactionStrategy
INFO  2016-08-04 06:57:40,836 [shard 4] database - Setting compaction strategy of system_traces.events to SizeTieredCompactionStrategy
INFO  2016-08-04 06:57:40,836 [shard 7] database - Setting compaction strategy of system_traces.events to SizeTieredCompactionStrategy
INFO  2016-08-04 06:57:40,837 [shard 6] database - Setting compaction strategy of system_traces.events to SizeTieredCompactionStrategy
INFO  2016-08-04 06:57:40,839 [shard 0] database - Schema version changed to fea14d93-9c5a-34f5-9d0e-2e49dcfa747e
INFO  2016-08-04 06:57:40,839 [shard 0] storage_service - Starting listening for CQL clients on 172.17.0.2:9042...
INFO  2016-08-04 06:57:40,840 [shard 0] storage_service - Thrift server listening on 172.17.0.2:9160 ...

Configuring data volume for storage

You can use Docker volumes to improve performance of Scylla.

Create a Scylla data directory /var/lib/scylla on the host, which is used by Scylla container to store all data:

console
$ sudo mkdir -p /var/lib/scylla/data /var/lib/scylla/commitlog /var/lib/scylla/hints /var/lib/scylla/view_hints

Launch Scylla using Docker's --volume command line option to mount the created host directory as a data volume in the container and disable Scylla's developer mode to run I/O tuning before starting up the Scylla node.

console
$ docker run --name some-scylla --volume /var/lib/scylla:/var/lib/scylla -d scylladb/scylla --developer-mode=0

Configuring resource limits

The Scylla docker image defaults to running on overprovisioned mode and won't apply any CPU pinning optimizations, which it normally does in non-containerized environments. For better performance, it is recommended to configure resource limits for your Docker container using the --smp, --memory, and --cpuset command line options, as well as disabling the overprovisioned flag as documented in the section "Command-line options".

Restart Scylla

The Docker image uses supervisord to manage Scylla processes. You can restart Scylla in a Docker container using

docker exec -it some-scylla supervisorctl restart scylla

Command-line options

The Scylla image supports many command line options that are passed to the docker run command.

--seeds SEEDS

The -seeds command line option configures Scylla's seed nodes. If no --seeds option is specified, Scylla uses its own IP address as the seed.

For example, to configure Scylla to run with two seed nodes 192.168.0.100 and 192.168.0.200.

console
$ docker run --name some-scylla -d scylladb/scylla --seeds 192.168.0.100,192.168.0.200

--listen-address ADDR

The --listen-address command line option configures the IP address the Scylla instance listens on for connections from other Scylla nodes.

For example, to configure Scylla to use listen address 10.0.0.5:

console
$ docker run --name some-scylla -d scylladb/scylla --listen-address 10.0.0.5

--alternator-address ADDR

The --alternator-address command line option configures the Alternator API listen address. The default value is the same as --listen-address.

--alternator-port PORT

The --alternator-port command line option configures the Alternator API listen port. The Alternator API is disabled by default. You need to specify the port to enable it.

For example, to configure Scylla to listen to Alternator API at port 8000:

console
$ docker run --name some-scylla -d scylladb/scylla --alternator-port 8000

--alternator-https-port PORT

The --alternator-https-port option is similar to --alternator-port, just enables an encrypted (HTTPS) port. Either the --alternator-https-port or --alternator-http-port, or both, can be used to enable Alternator.

Note that the --alternator-https-port option also requires that files /etc/scylla/scylla.crt and /etc/scylla/scylla.key be inserted into the image. These files contain an SSL certificate and key, respectively.

--alternator-write-isolation policy

The --alternator-write-isolation command line option chooses between four allowed write isolation policies described in docs/alternator/alternator.md. This option must be specified if Alternator is enabled - it does not have a default.

--broadcast-address ADDR

The --broadcast-address command line option configures the IP address the Scylla instance tells other Scylla nodes in the cluster to connect to.

For example, to configure Scylla to use broadcast address 10.0.0.5:

console
$ docker run --name some-scylla -d scylladb/scylla --broadcast-address 10.0.0.5

--broadcast-rpc-address ADDR

The --broadcast-rpc-address command line option configures the IP address the Scylla instance tells clients to connect to.

For example, to configure Scylla to use broadcast RPC address 10.0.0.5:

console
$ docker run --name some-scylla -d scylladb/scylla --broadcast-rpc-address 10.0.0.5

--smp COUNT

The --smp command line option restricts Scylla to COUNT number of CPUs. The option does not, however, mandate a specific placement of CPUs. See the --cpuset command line option if you need Scylla to run on specific CPUs.

For example, to restrict Scylla to 2 CPUs:

console
$ docker run --name some-scylla -d scylladb/scylla --smp 2

--memory AMOUNT

The --memory command line option restricts Scylla to use up to AMOUNT of memory. The AMOUNT value supports both M unit for megabytes and G unit for gigabytes.

For example, to restrict Scylla to 4 GB of memory:

console
$ docker run --name some-scylla -d scylladb/scylla --memory 4G

--reserve-memory AMOUNT

The --reserve-memory command line option configures Scylla to reserve the AMOUNT of memory to the OS. The AMOUNT value supports both M unit for megabytes and G unit for gigabytes.

For example, to reserve 4 GB of memory to the OS:

console
$ docker run --name some-scylla -d scylladb/scylla --reserve-memory 4G

--overprovisioned ENABLE

The --overprovisioned command line option enables or disables optimizations for running Scylla in an overprovisioned environment. If no --overprovisioned option is specified, Scylla defaults to running with optimizations enabled. If --overprovisioned is not specified and is left at its default, specifying --cpuset will automatically disable --overprovisioned

For example, to enable optimizations for running in an statically partitioned environment:

console
$ docker run --name some-scylla -d scylladb/scylla --overprovisioned 0

--io-setup ENABLE

The --io-setup command line option specifies if the scylla_io_setup script is run when the container is started for the first time. This is useful if users want to specify I/O settings themselves in environments such as Kubernetes, where running iotune is problematic. The default of --io-setup is 1, which means I/O setup is run.

For example, to skip running I/O setup:

console
$ docker run --name some-scylla -d scylladb/scylla --io-setup 0

--cpuset CPUSET

The --cpuset command line option restricts Scylla to run on only on CPUs specified by CPUSET. The CPUSET value is either a single CPU (e.g. --cpuset 1), a range (e.g. --cpuset 2-3), or a list (e.g. --cpuset 1,2,5), or a combination of the last two options (e.g. --cpuset 1-2,5).

For example, to restrict Scylla to run on physical CPUs 0 to 2 and 4:

console
$ docker run --name some-scylla -d scylladb/scylla --cpuset 0-2,4

--developer-mode ENABLE

The --developer-mode command line option enables Scylla's developer mode, which relaxes checks for things like XFS and enables Scylla to run on unsupported configurations (which usually results in suboptimal performance). If no --developer-mode command line option is defined, Scylla defaults to running with developer mode enabled. It is highly recommended to disable developer mode for production deployments to ensure Scylla is able to run with maximum performance.

For example, to disable developer mode:

console
$ docker run --name some-scylla -d scylladb/scylla --developer-mode 0

--experimental ENABLE

The --experimental command line option enables Scylla's experimental mode If no --experimental command line option is defined, Scylla defaults to running with experimental mode disabled. It is highly recommended to disable experimental mode for production deployments.

For example, to enable experimental mode:

console
$ docker run --name some-scylla -d scylladb/scylla --experimental 1

--disable-version-check

The --disable-version-check disable the version validation check.

--authenticator AUTHENTICATOR

The --authenticator command lines option allows to provide the authenticator class Scylla will use. By default Scylla uses the AllowAllAuthenticator which performs no credentials checks. The second option is using the PasswordAuthenticator parameter, which relies on username/password pairs to authenticate users.

--authorizer AUTHORIZER

The --authorizer command lines option allows to provide the authorizer class Scylla will use. By default Scylla uses the AllowAllAuthorizer which allows any action to any user. The second option is using the CassandraAuthorizer parameter, which stores permissions in system_auth.permissions table.

JMX parameters

JMX Scylla service is initialized from the /scylla-jmx-service.sh on container startup. By default the script uses /etc/sysconfig/scylla-jmx to read default configuration. It then can be overridden by setting an environmental parameters.

An example:

docker run -d -e "SCYLLA_JMX_ADDR=-ja 0.0.0.0" -e SCYLLA_JMX_REMOTE=-r --publish 7199:7199 scylladb/scylla

SCYLLA_JMX_PORT

Scylla JMX listening port.

Default value:

SCYLLA_JMX_PORT="-jp 7199"

SCYLLA_API_PORT

Scylla API port for JMX to connect to.

Default value:

SCYLLA_API_PORT="-p ***"

SCYLLA_API_ADDR

Scylla API address for JMX to connect to.

Default value:

SCYLLA_API_ADDR="-a localhost"

SCYLLA_JMX_ADDR

JMX address to bind on.

Default value:

SCYLLA_JMX_ADDR="-ja localhost"

For example, it is possible to make JMX available to the outer world by changing its bind address to 0.0.0.0:

docker run -d -e "SCYLLA_JMX_ADDR=-ja 0.0.0.0" -e SCYLLA_JMX_REMOTE=-r --publish 7199:7199 scylladb/scylla

cassandra-stress requires direct access to the JMX.

SCYLLA_JMX_FILE

A JMX service configuration file path.

Example value:

SCYLLA_JMX_FILE="-cf /etc/scylla.d/scylla-user.cfg"

SCYLLA_JMX_LOCAL

The location of the JMX executable.

Example value:

SCYLLA_JMX_LOCAL="-l /opt/scylladb/jmx

SCYLLA_JMX_REMOTE

Allow JMX to run remotely.

Example value:

SCYLLA_JMX_REMOTE="-r"

SCYLLA_JMX_DEBUG

Enable debugger.

Example value:

SCYLLA_JMX_DEBUG="-d"

Related Links

  • http://docs.scylladb.com/procedures/best_practices_scylla_on_docker/

User Feedback

Issues

For bug reports, please use Scylla's https://github.com/scylladb/scylla/issues on GitHub. Please read the http://docs.scylladb.com/operating-scylla/troubleshooting/report_scylla_problem/ page before you report bugs.

For general help, see Scylla's http://www.scylladb.com/doc/. For questions and comments, use Scylla's http://www.scylladb.com/community/.

Contributing

Want to scratch your own itch and contribute a patch. We are eager to review and merge your code. Please consult the http://www.scylladb.com/kb/contributing/

镜像拉取方式

您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。

轩辕镜像加速拉取命令点我查看更多 scylla 镜像标签

docker pull docker.xuanyuan.run/scylladb/scylla:<标签>

使用方法:

  • 登录认证方式
  • 免认证方式

DockerHub 原生拉取命令

docker pull scylladb/scylla:<标签>

轩辕镜像配置手册

按平台快速找到配置文档

一键安装

一键安装 Docker

Linux Docker 一键安装

AI

用 AI 使用轩辕镜像

agents.md · AI 对话 · 提示词

Docker

登录仓库拉取

登录认证 · 私有仓库

专属域名拉取

免登录 · 高速拉取

Linux

Docker 镜像配置

Windows / Mac

Docker Desktop 配置

MacOS OrbStack

OrbStack 容器

Apple Container

macOS 原生容器

Docker Compose

Compose 项目配置

NAS

群晖

Synology 配置

飞牛

fnOS 镜像配置

绿联

绿联 NAS

威联通

QNAP 配置

极空间

极空间 NAS

Unraid

Unraid NAS

企业仓库

其他仓库

ghcr · Quay · nvcr

Harbor 镜像源

Proxy Repository 对接

Portainer 镜像源

Registries 配置

Nexus 镜像源

Docker Proxy 缓存

开发工具

Dev Containers

VS Code 开发容器

Podman

Podman 配置指南

Singularity / Apptainer

HPC 科学计算容器

Kubernetes

K8s Containerd

Kubernetes · Containerd

K3s

轻量级集群

面板 / 网络

爱快路由

爱快 4.0 · iKuai 镜像加速

宝塔面板

一键配置镜像源

需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单

镜像拉取常见问题

功能

版本功能对比

功能对比 · 版本选择

支持的镜像仓库

Docker Hub · GCR · GHCR

专属域名用法

专属域名 · 开启停用 · 多仓库

新手拉取配置

登录 · 专属域名 · 配置

docker search 限制

专属域名 · Hub 搜索

不支持 push

仅支持 pull · 不支持

拉取速度原因

带宽 · 缓存 · 冷热镜像

错误码

402 与流量用尽

402 · 流量包 · 充值

401 认证失败

401 · docker login

manifest unknown

标签错误 · 镜像不存在

410 Gone 排查

410 · Docker 升级

429 限流

免费版 · 专业版 · 企业版 · 请求频率

其他报错

DNS 超时

DNS 解析 · 网络超时

TLS 证书失败

no matching manifest(架构)

docker.sock / daemon

账号

失败是否计费

manifest · blob · 计费

申请开票(企业 / 个人)

开票 · 发票 · 工单

修改登录密码

网站 · 仓库 · 重置

注销账户

工单 · 数据 · 注销

原理

mirrors 不生效

daemon.json · 重启

去掉域名前缀

docker tag · 重命名

指定架构拉取

ARM64 · AMD64 · 多架构

latest 与「最新」

digest · 版本号 · 标签

查看全部问题→

用户好评

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

用户头像

oldzhang

运维工程师

Linux服务器

5

"Docker访问体验非常流畅,大镜像也能快速完成下载。"

轩辕镜像
镜像详情
...
scylladb/scylla
定价查看流量套餐与价格
博客Docker 镜像公告与技术博客
专业版 · 高速稳定拉取镜像
高速镜像下载·在线技术支持·99.95% SLA 保障·付费会员免广告
50GB 仅 ¥8/年
专业版 · 高速稳定拉取镜像
50GB 仅 ¥8/年
高速镜像下载·在线技术支持·99.95% SLA 保障·付费会员免广告
用户协议·隐私政策·增值电信业务经营许可证:浙B2-20261007·©2024-2026 源码跳动©2024-2026 杭州源码跳动科技有限公司·商务合作:点击复制邮箱

更多 scylla 镜像推荐

hydraoss/scylla logo

hydraoss/scylla

hydraoss
Hydra规范的Kubernetes实现,用于在Kubernetes集群中提供标准的身份验证与授权服务,支持OAuth2.0等行业标准。
10万+ 次下载
6 年前更新
technosophos/scylla logo

technosophos/scylla

technosophos
暂无描述
1万+ 次下载
7 年前更新
technosophos/scylla logo

technosophos/scylla

technosophos
暂无描述
1万+ 次下载
7 年前更新
hydraoss/scylla logo

hydraoss/scylla

hydraoss
Hydra规范的Kubernetes实现,用于在Kubernetes集群中提供标准的身份验证与授权服务,支持OAuth2.0等行业标准。
10万+ 次下载
6 年前更新

查看更多 scylla 相关镜像

更多相关 Docker 镜像与资源

以下是 scylladb/scylla 相关的常用 Docker 镜像,适用于 不同场景 等不同场景:

  • library/cassandra Docker 镜像说明(Apache Cassandra NoSQL 数据库,官方标准版本,适合分布式数据存储)
  • bitnami/cassandra Docker 镜像说明(Bitnami Apache Cassandra,适合宽列分布式 NoSQL 存储)
  • library/mongo Docker 镜像说明
  • amd64/mongo Docker 镜像说明(MongoDB 数据库,AMD64 架构版本)
  • arm64v8/mongo Docker 镜像说明(arm64v8 架构 MongoDB,适合 ARM64 文档数据库部署)