Merge 'fixed broken links, added community forum link, university link, spelling and other mistakes' from Guy Shtub

Closes #13979

* github.com:scylladb/scylladb:
  Update docker-hub.md
  Update docs/dev/docker-hub.md
  Update docs/dev/docker-hub.md
  Update docs/dev/docker-hub.md
  Update docs/dev/docker-hub.md
  Update docs/dev/docker-hub.md
  fixed broken links, added community forum link, university link,  other mistakes
This commit is contained in:
Botond Dénes
2023-05-24 09:58:58 +03:00

View File

@@ -1,6 +1,6 @@
# Docker Hub Image
## What is ScyllaDB ?
## What is ScyllaDB?
ScyllaDB is a high-performance NoSQL database system, fully compatible with Apache Cassandra.
ScyllaDB is released under the GNU Affero General Public License version 3 and the Apache License, ScyllaDB is free and open-source software.
@@ -9,25 +9,25 @@ ScyllaDB is released under the GNU Affero General Public License version 3 and t
![logo](http://www.scylladb.com/wp-content/uploads/mascot_medium.png)
Scylla Docker support x86_64 for all version, and aarch64 starting from Scylla 4.6. Get it now with Scylla [nightly build](https://hub.docker.com/r/scylladb/scylla-nightly)
ScyllaDB Docker supports x86_64 for all versions, and aarch64 starting from ScyllaDB 4.6. Get it now with ScyllaDB [nightly build](https://hub.docker.com/r/scylladb/scylla-nightly)
## Quick start
To startup a Scylla single-node cluster in developer mode execute:
To startup a ScyllaDB 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
This command will start a ScyllaDB 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
such that limiting the 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:
Using 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 the 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 =
@@ -123,15 +123,15 @@ INFO 2016-08-04 06:57:40,840 [shard 0] storage_service - Thrift server listenin
### Configuring data volume for storage
You can use Docker volumes to improve performance of Scylla.
You can use Docker volumes to improve the performance of ScyllaDB.
Create a Scylla data directory ``/var/lib/scylla`` on the host, which is used by Scylla container to store all data:
Create a Scylla data directory ``/var/lib/scylla`` on the host, which is used by the ScyllaDB container to store all the 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.
Launch ScyllaDB using Docker's ``--volume`` command line option to mount the created host directory as a data volume in the container and disable ScyllaDB's developer mode to run I/O tuning before starting up the ScyllaDB node.
```console
$ docker run --name some-scylla --volume /var/lib/scylla:/var/lib/scylla -d scylladb/scylla --developer-mode=0
@@ -139,13 +139,13 @@ $ docker run --name some-scylla --volume /var/lib/scylla:/var/lib/scylla -d scyl
### 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.
The ScyllaDB 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
### Restart ScyllaDB
The Docker image uses supervisord to manage Scylla processes. You can restart Scylla in a Docker container using
The Docker image uses supervisord to manage ScyllaDB processes. You can restart ScyllaDB in a Docker container using:
```
docker exec -it some-scylla supervisorctl restart scylla
@@ -153,14 +153,14 @@ 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.
The ScyllaDB 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.
The `-seeds` command line option configures ScyllaDB's seed nodes.
If no `--seeds` option is specified, ScyllaDB 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`.
For example, to configure ScyllaDB 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
@@ -168,9 +168,9 @@ $ docker run --name some-scylla -d scylladb/scylla --seeds 192.168.0.100,192.168
#### `--listen-address ADDR`
The `--listen-address` command line option configures the IP address the Scylla instance listens on for connections from other Scylla nodes.
The `--listen-address` command line option configures the IP address the ScyllaDB instance listens on for connections from other ScyllaDB nodes.
For example, to configure Scylla to use listen address `10.0.0.5`:
For example, to configure ScyllaDB to use listen address `10.0.0.5`:
```console
$ docker run --name some-scylla -d scylladb/scylla --listen-address 10.0.0.5
@@ -188,7 +188,7 @@ The `--alternator-address` command line option configures the Alternator API lis
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`:
For example, to configure ScyllaDB to listen to Alternator API at port `8000`:
```console
$ docker run --name some-scylla -d scylladb/scylla --alternator-port 8000
@@ -212,9 +212,9 @@ The `--alternator-write-isolation` command line option chooses between four allo
#### `--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.
The `--broadcast-address` command line option configures the IP address the ScyllaDB instance tells other ScyllaDB nodes in the cluster to connect to.
For example, to configure Scylla to use broadcast address `10.0.0.5`:
For example, to configure ScyllaDB to use broadcast address `10.0.0.5`:
```console
$ docker run --name some-scylla -d scylladb/scylla --broadcast-address 10.0.0.5
@@ -222,9 +222,9 @@ $ 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.
The `--broadcast-rpc-address` command line option configures the IP address the ScyllaDB instance tells clients to connect to.
For example, to configure Scylla to use broadcast RPC address `10.0.0.5`:
For example, to configure ScyllaDB 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
@@ -232,11 +232,11 @@ $ docker run --name some-scylla -d scylladb/scylla --broadcast-rpc-address 10.0.
#### `--smp COUNT`
The `--smp` command line option restricts Scylla to `COUNT` number of CPUs.
The `--smp` command line option restricts ScyllaDB 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.
See the `--cpuset` command line option if you need ScyllaDB to run on specific CPUs.
For example, to restrict Scylla to 2 CPUs:
For example, to restrict ScyllaDB to 2 CPUs:
```console
$ docker run --name some-scylla -d scylladb/scylla --smp 2
@@ -244,10 +244,10 @@ $ 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 `--memory` command line option restricts ScyllaDB 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:
For example, to restrict ScyllaDB to 4 GB of memory:
```console
$ docker run --name some-scylla -d scylladb/scylla --memory 4G
@@ -255,7 +255,7 @@ $ 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 `--reserve-memory` command line option configures ScyllaDB 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:
@@ -266,8 +266,8 @@ $ 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
The `--overprovisioned` command line option enables or disables optimizations for running ScyllaDB in an overprovisioned environment.
If no `--overprovisioned` option is specified, ScyllaDB 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:
@@ -292,10 +292,10 @@ $ 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` command line option restricts ScyllaDB 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:
For example, to restrict ScyllaDB to run on physical CPUs 0 to 2 and 4:
```console
$ docker run --name some-scylla -d scylladb/scylla --cpuset 0-2,4
@@ -303,9 +303,9 @@ $ 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.
The `--developer-mode` command line option enables ScyllaDB's developer mode, which relaxes checks for things like XFS and enables ScyllaDB to run on unsupported configurations (which usually results in suboptimal performance).
If no `--developer-mode` command line option is defined, ScyllaDB defaults to running with developer mode *enabled*.
It is highly recommended to disable developer mode for production deployments to ensure ScyllaDB is able to run with maximum performance.
For example, to disable developer mode:
@@ -315,8 +315,8 @@ $ 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*.
The `--experimental` command line option enables ScyllaDB's experimental mode
If no `--experimental` command line option is defined, ScyllaDB defaults to running with experimental mode *disabled*.
It is highly recommended to disable experimental mode for production deployments.
For example, to enable experimental mode:
@@ -335,22 +335,22 @@ 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.
The `--authenticator` command lines option allows to provide the authenticator class ScyllaDB will use. By default ScyllaDB 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.
**Since: 2.3**
#### `--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.
The `--authorizer` command lines option allows to provide the authorizer class ScyllaDB will use. By default ScyllaDB 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.
**Since: 2.3**
### JMX parameters
JMX Scylla service is initialized from the `/scylla-jmx-service.sh` on
JMX ScyllaDB 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.
to read the default configuration. It then can be overridden by setting
environmental parameters.
An example:
@@ -429,20 +429,23 @@ Example value:
### Related Links
* [Best practices for running Scylla on docker](http://docs.scylladb.com/procedures/best_practices_scylla_on_docker/)
* [Best practices for running ScyllaDB on docker](http://docs.scylladb.com/procedures/best_practices_scylla_on_docker/)
## User Feedback
### Issues
For bug reports, please use Scylla's [issue tracker](https://github.com/scylladb/scylla/issues) on GitHub.
Please read the [How to report a Scylla problem](http://docs.scylladb.com/operating-scylla/troubleshooting/report_scylla_problem/) page before you report bugs.
For bug reports, please use ScyllaDB's [issue tracker](https://github.com/scylladb/scylla/issues) on GitHub.
Please read the [How to report a ScyllaDB problem](http://docs.scylladb.com/operating-scylla/troubleshooting/report_scylla_problem/) page before you report bugs.
For general help, see Scylla's [documentation](http://www.scylladb.com/doc/).
For questions and comments, use Scylla's [mailing lists](http://www.scylladb.com/community/).
For general help, see ScyllaDB's [documentation](https://docs.scylladb.com/stable/).
You can find training material and online courses at [ScyllaDB University](https://university.scylladb.com/).
For questions and comments, use ScyllaDB's [Community Forum](https://forum.scylladb.com/).
### Contributing
Want to scratch your own itch and contribute a patch.
Want to scratch your own itch and contribute a patch?
We are eager to review and merge your code.
Please consult the [Contributing on Scylla page](http://www.scylladb.com/kb/contributing/)
Please consult the [Contributing to ScyllaDB](https://github.com/scylladb/scylladb/blob/master/CONTRIBUTING.md) page.