Docker compose file:
version: "3.9"
services:
nats:
image: nats:latest
container_name: nats_main
restart: always
ports:
- "4222:4222"
- "8222:8222"
volumes:
- ./nats.conf:/etc/nats/nats.conf
command: ["-c", "/etc/nats/nats.conf"]
nats-client:
image: natsio/nats-box
container_name: nats_client
restart: always
depends_on:
- nats
entrypoint: /bin/sh
tty: true
Config file:
listen: 0.0.0.0:4222
http: 8222
jetstream {
store_dir: /data/jetstream
max_mem_store: 1Gb
max_file_store: 10Gb
}
authorization {
token: dfji348934jdd0i24uhjd29834ijrr0345jo0r3j034n
}
Run:
docker compose up --build -d
Test:
docker compose exec nats-client nats sub -s nats://dfji348934jdd0i24uhjd29834ijrr0345jo0r3j034n@nats:4222 test
Fron another terminal:
docker compose exec nats-client nats pub -s nats://dfji348934jdd0i24uhjd29834ijrr0345jo0r3j034n@nats:4222 test "Hello via Docker Compose!"
Setup JetStream:
Verify JetStream is running:
docker compose exec nats-client nats server check jetstream -s nats://dfji348934jdd0i24uhjd29834ijrr0345jo0r3j034n@nats:4222
Create the TIXIO Stream (Manual CLI) and follow default command
docker compose exec nats-client nats stream add TIXIO \
--subjects "tixio.>" \
--storage file \
--retention limits \
-s nats://dfji348934jdd0i24uhjd29834ijrr0345jo0r3j034n@nats:4222
Top comments (0)