Getting autobd
Golang is required, so get that. Most versions should work but it's probably best to stick with at least 1.4.2 as that's what I'm developing on.
After you have go installed, it's as simple as either cloning the git repo:
git clone https://github.com/tywkeene/autobd
or using go get:
go get github.com/tywkeene/autobd
and to build
$ cd autobd
$ ./build.sh
Getting it running
To run autobd , simply do: ./autobd -config etc/config.toml
Autobd ships with two configuration files, config.toml.server and config.toml.node, to get you started running both
Dockerfile
Autobd ships with two Dockerfiles and the scripts to deploy both server and node containers. You'll of course need docker
scripts/deploy-server.sh
Usage: ./scripts/deploy-server.sh
Removes old autobd-server container, builds a new image, and deploys a new autobd-server container using the arguments:
DATA_DIR="/home/$USER/data/server-data"
SECRET_DIR="/home/$USER/secret"
ETC_DIR="/home/$USER/etc/autobd"
PORT=8080
These variables may be modified to suit your needs.
scripts/deploy-nodes.sh
Usage: ./scripts/deploy-nodes.sh n
Builds new autobd-node images, and deploys n nodes
scripts/kill-nodes.sh
Usage: ./scripts/kill-nodes.sh n
Runs docker rm -f
for n nodes
scripts/setup-network.sh
Usage ./scripts/setup-network.sh
Sets up a docker network for server and nodes to communicate. (I basically just use this testing, may or may not be useful to you)
The API
See API.md
Contributing
Open a pull request or issue with your idea or bug. Really. Anything wrong with anything anywhere, open a ticket and let me know, then we can work on it together :) (Just be sure to check the story board before creating a new ticket)