ministream

module
v1.7.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 25, 2024 License: MIT

README

Ministream

Go Report Card license

Ministream

Overview

Ministream is an open-source real-time data stream service. Ministream is well suited for event driven architectures.

Ministream is simple and straightforward, it runs on a single server and has no dependencies over third parties. Events records are pushed and pulled by a simple HTTP request. It it served by it's own HTTP(s) server and stores data on json files. Ministream can easily fit in a standalone docker container. Ministream also provides a complete web api to manage the server.

Quick install

Install the docker image

Use the official docker image: ghcr.io/nbigot/ministream:latest

Packages and versions

Install from the command line:

$ docker pull ghcr.io/nbigot/ministream:latest
$ docker run --name ministream -it -p 8080:8080 ghcr.io/nbigot/ministream:latest
Docker quick tips

The docker image ghcr.io/nbigot/ministream:latest is a multi-arch image that contains images for:

  • linux amd64 v2
  • linux amd64 v3
  • linux arm64
  • linux arm v7
$ docker manifest inspect ghcr.io/nbigot/ministream:latest
Install by building your own docker image
Download source code
$ git clone https://github.com/nbigot/ministream.git
Build a docker image
$ cd ministream
$ docker build -t nbigot/ministream .
Start a docker container
$ docker run --name ministream -it -p 8080:8080 nbigot/ministream
Install by compiling source code
Download source code
$ git clone https://github.com/nbigot/ministream.git
Compile
$ cd ministream
$ go build cmd/ministream/ministream.go
Configure

Edit the file config-templates/docker/config/config.yaml

Pay attention to the directory paths in the config file.

Run ministream
$ ministream -config config-templates/docker/config/config.yaml

Ministream quick tips

Let's assume Ministream is running and listening on the tcp port 8080.

Run simple commands:

$ curl http://localhost:8080
Welcome to ministream!

$ curl http://localhost:8080/api/v1/utils/ping
ok

$ curl http://localhost:8080/livez
ok

$ curl http://localhost:8080/readyz
ok

Contribution guidelines

If you want to contribute to Ministream, be sure to review the code of conduct.

License

This software is licensed under the MIT.

Directories

Path Synopsis
cmd
Package docs GENERATED BY SWAG; DO NOT EDIT This file was generated by swaggo/swag
Package docs GENERATED BY SWAG; DO NOT EDIT This file was generated by swaggo/swag
web

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL