Streav
Streav

Docker Compose

Get your free license key by joining our Beta program.

Verify that Docker Compose is installed on your system. If you haven't installed Docker Compose yet, refer to the official installation instructions.

Ensure that Docker and Docker Compose commands are executed by members of the Docker group or with root/sudo privileges. If you encounter errors, make sure your account is in the Docker group (adduser my_username docker and then log out and back in) or you are issuing them with the appropriate sudo/su privilege.

This example provides a minimal Docker Compose configuration for deploying the Streav platform with a single instance of Streav Streaming and Streav Management. The setup includes PostgreSQL, RabbitMQ, Redis, and the necessary volumes.

version: '3.6'

services:

  postgres:
    image: bitnami/postgresql:latest
    restart: unless-stopped
    environment:
      POSTGRESQL_DATABASE: streav
      POSTGRESQL_USERNAME: streav
      POSTGRESQL_PASSWORD: test
    ports:
      - '5432:5432'
    volumes:
      - streav-postgres:/bitnami/postgresql

  rabbitmq:
    image: rabbitmq:management-alpine
    restart: unless-stopped
    environment:
      RABBITMQ_DEFAULT_USER: test
      RABBITMQ_DEFAULT_PASS: test
    ports:
      - '5672:5672'
      - '15672:15672'
    volumes:
      - streav-rabbitmq:/var/lib/rabbitmq

  redis:
    image: bitnami/redis:latest
    restart: unless-stopped
    environment:
      REDIS_PASSWORD: test
    ports:
      - '6379:6379'
    volumes:
      - streav-redis:/bitnami/redis/data

  streaming:
    image: streav/streaming:beta
    restart: unless-stopped
    ports:
      - '8070:5000'
    depends_on:
      - postgres
      - rabbitmq
    volumes:
      - streav-storage:/streav/data
      - ~/library:/streav/library
    environment:
      - NodeId=89CD84B4-47A1-42F7-9381-07A68523B3A9
      - NodeName=Node 1
      - HttpExternalPort=8070
      - RabbitMq__Host=rabbitmq
      - RabbitMq__Username=test
      - RabbitMq__Password=test
      - Postgres=Server=postgres;Port=5432;Database=streav;User Id=streav;Password=test;
      - Redis__Hosts__0__Host=redis
      - Redis__Database=0
      - Redis__Password=test
      - TrustedIpAddresses__0=::1
      - TrustedIpAddresses__1=127.0.0.1
      - LicenseKey=XXXX

  management:
    image: streav/management:beta
    restart: unless-stopped
    ports:
      - '8000:5000'
    depends_on:
      - postgres
      - rabbitmq
      - redis
    environment:
      - Postgres=Server=postgres;Port=5432;Database=streav;User Id=streav;Password=test;
      - RabbitMq__Host=rabbitmq
      - RabbitMq__Username=test
      - RabbitMq__Password=test
      - Redis__Hosts__0__Host=redis
      - Redis__Database=0
      - Redis__Password=test
      - LicenseKey=XXXX

volumes:
  streav-postgres:
  streav-rabbitmq:
  streav-redis:
  streav-storage:
  1. Copy the provided Docker Compose configuration into a file named docker-compose.yml.
  2. Adjust the environment variables, ports, and volume mappings based on your specific requirements.
  3. Run docker compose up -d to start the Streav platform.

It is expected that the instances will fail to run initially. Refer to First-Time Setup.