goes/README.md

40 lines
1.3 KiB
Markdown
Raw Normal View History

2016-06-25 07:14:20 +00:00
GoLang implementation of a simple EventStore
# Getting started
## Pre-requisites
- Install [GoLang](https://golang.org/doc/install) version 1.6+
- Install [libsodium](https://download.libsodium.org/libsodium/releases/)\* version 1.0.10+ (Linux only^)
- Install [zeromq](http://zeromq.org/intro:get-the-software)\* version 4.0+ (Linux only^)
- Install [msys2](https://msys2.github.io/) (Windows only)
\* On Linux libsodium and zeromq are installed from source (`./configure && make && sudo make install && sudo ldconfig`)
^ On Window libzmq and libsodium are installed using pacman in MSYS2 shell (`pacman -S mingw-w64-x86_64-zeromq`)
2016-06-25 07:36:46 +00:00
You can look at [scripts/bootstrap.sh](https://github.com/adymitruk/goes/blob/master/scripts/bootstrap.sh) to get an idea on how to install all the pre-requisites.
2016-06-25 07:14:20 +00:00
## Build
### Fetching GO packages
In your GOPATH folder, execute the following commands:
`go get github.com/adymitruk/goes`
`go get github.com/pebbe/zmq4`
`go get github.com/satori/go.uuid`
### Compiling the binary
In the project root folder, execute the following command:
2016-06-25 07:14:20 +00:00
`go build`
2016-06-25 07:14:20 +00:00
## Running the server
In the project root folder, execute the following command:
2016-06-25 07:14:20 +00:00
`./goes --db=./events --addr=tcp://127.0.0.1:12345`
2016-06-25 07:14:20 +00:00
Both flags are optional and their default values are the same as the example.