From 4a2d30cdf4ff4bc6ae915ada7a058db0c908659d Mon Sep 17 00:00:00 2001 From: Ivan Kozlovic Date: Wed, 10 Aug 2016 10:39:40 -0600 Subject: [PATCH] Add NATS Streaming This is documentation for NATS Streaming server. See https://github.com/docker-library/official-images/pull/2036 --- nats-streaming/README-short.txt | 1 + nats-streaming/content.md | 120 ++++++++++++++++++++++++++++++++ nats-streaming/github-repo | 1 + nats-streaming/license.md | 1 + nats-streaming/logo.png | Bin 0 -> 4509 bytes 5 files changed, 123 insertions(+) create mode 100644 nats-streaming/README-short.txt create mode 100644 nats-streaming/content.md create mode 100644 nats-streaming/github-repo create mode 100644 nats-streaming/license.md create mode 100644 nats-streaming/logo.png diff --git a/nats-streaming/README-short.txt b/nats-streaming/README-short.txt new file mode 100644 index 000000000..3568f89f2 --- /dev/null +++ b/nats-streaming/README-short.txt @@ -0,0 +1 @@ +NATS Streaming is an open-source, high-performance, cloud native messaging streaming system. diff --git a/nats-streaming/content.md b/nats-streaming/content.md new file mode 100644 index 000000000..7fcd223d6 --- /dev/null +++ b/nats-streaming/content.md @@ -0,0 +1,120 @@ +# [NATS Streaming](https://nats.io): A high-performance cloud native messaging streaming system. + +%%LOGO%% + +`nats-streaming` is a high performance streaming server for the NATS Messaging System. + +# Example usage + +```bash +# Run a NATS Streaning server +# Each server exposes multiple ports +# 4222 is for clients. +# 8222 is an HTTP management port for information reporting. +# use -p or -P as needed. + +$ docker run -d nats-streaming + +Output that you would get if you had started with `-ti` instead of `d` (for daemon): + +[INF] Starting nats-streaming-server[test-cluster] version 0.2.2 +[INF] Starting nats-server version 0.9.2 +[INF] Starting http monitor on :8222 +[INF] Listening for client connections on 0.0.0.0:4222 +[INF] Server is ready +[INF] STAN: Message store is MEMORY +[INF] STAN: Maximum of 1000000 will be stored + +To use a file based store instead, you would run: + +$ docker run -d nats-streaming -store file -dir datastore + +[INF] Starting nats-streaming-server[test-cluster] version 0.2.2 +[INF] Starting nats-server version 0.9.2 +[INF] Starting http monitor on :8222 +[INF] Listening for client connections on 0.0.0.0:4222 +[INF] Server is ready +[INF] STAN: Message store is FILE +[INF] STAN: Maximum of 1000000 will be stored + +You can also connect to a remote NATS Server running in a docker image. +First, run NATS Server: + +$ docker run -d --name=nats-main nats + +Now, start the Streaming server and link it to the above docker image: + +$ docker run -d --link nats-main nats-streaming -ns nats://nats-main:4222 + +[INF] Starting nats-streaming-server[test-cluster] version 0.2.2 +[INF] STAN: Message store is MEMORY +[INF] STAN: Maximum of 1000000 will be stored + +Notice that the output shows that the NATS Server was not started, as opposed to the first output. + +``` + +# Commandline Options + +```bash +Streaming Server Options: + -cid, --cluster_id Cluster ID (default: test-cluster) + -st, --store Store type: MEMORY|FILE (default: MEMORY) + --dir For FILE store type, this is the root directory + -mc, --max_channels Max number of channels (aka subjects, topics, etc...) + -msu, --max_subs Max number of subscriptions per channel + -mm, --max_msgs Max number of messages per channel + -mb, --max_bytes Max messages total size per channel + -ns, --nats_server Connect to this external NATS Server (embedded otherwise) + +Streaming Server TLS Options: + -secure Use a TLS connection to the NATS server without + verification; weaker than specifying certificates. + -tls_client_key Client key for the streaming server + -tls_client_cert Client certificate for the streaming server + -tls_client_cacert Client certificate CA for the streaming server + +Streaming Server Logging Options: + -SD, --stan_debug Enable STAN debugging output + -SV, --stan_trace Trace the raw STAN protocol + -SDV Debug and trace STAN + (See additional NATS logging options below) + +Embedded NATS Server Options: + -a, --addr Bind to host address (default: 0.0.0.0) + -p, --port Use port for clients (default: 4222) + -P, --pid File to store PID + -m, --http_port Use port for http monitoring + -ms,--https_port Use port for https monitoring + -c, --config Configuration file + +Logging Options: + -l, --log File to redirect log output + -T, --logtime Timestamp log entries (default: true) + -s, --syslog Enable syslog as log method + -r, --remote_syslog Syslog server addr (udp://localhost:514) + -D, --debug Enable debugging output + -V, --trace Trace the raw protocol + -DV Debug and trace + +Authorization Options: + --user User required for connections + --pass Password required for connections + --auth Authorization token required for connections + +TLS Options: + --tls Enable TLS, do not verify clients (default: false) + --tlscert Server certificate file + --tlskey Private key for server certificate + --tlsverify Enable TLS, very client certificates + --tlscacert Client certificate CA for verification + +NATS Clustering Options: + --routes Routes to solicit and connect + --cluster Cluster URL for solicited routes + +Common Options: + -h, --help Show this message + -v, --version Show version + --help_tls TLS help. +``` diff --git a/nats-streaming/github-repo b/nats-streaming/github-repo new file mode 100644 index 000000000..a58594919 --- /dev/null +++ b/nats-streaming/github-repo @@ -0,0 +1 @@ +https://github.com/nats-io/nats-streaming-docker diff --git a/nats-streaming/license.md b/nats-streaming/license.md new file mode 100644 index 000000000..316d32e6b --- /dev/null +++ b/nats-streaming/license.md @@ -0,0 +1 @@ +View [license information](https://github.com/nats-io/nats-streaming-server/blob/master/LICENSE) for the software contained in this image. diff --git a/nats-streaming/logo.png b/nats-streaming/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..c81574f8a4e7ade9e51d78ad7ec512837a8bb100 GIT binary patch literal 4509 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 WFHJXvMT7VLFtIeVMc1G_V*U%m4zkVw literal 0 HcmV?d00001