Go here to check what's ongoing and try the latest featues.
To be able to get going; that is docker pull, you need custom credentials. Contact us at www.beamylabs.com.
Clone this repository and make sure you have docker and docker-compose installed, then run:
NODE_NAME=$(scripts/resolve-ip.sh eth0) SIGNALBROKER_IP=$(scripts/resolve-ip.sh eth0) docker-compose -f docker-compose-full-system.yml up -dOn a generic setup
NODE_NAMEandSIGNALBROKER_IPwill likely be set to the same value.
$(scripts/resolve-ip.sh eth0)assumes that the interface for your main ethernet connection is calledeth0. If that's not the case, you need to changeeth0to the correct name. (Hint you can can find your interface name usingifconfigoripconfig).
Some dated docker compose versions might show
ERROR: Invalid interpolation format for "command" option....If you can't upgrade your docker-compose you can fix this by manually adding the ip address in the docker-compose-full-system.yml like so:
command: ./grpcwebproxy --backend_addr=${SIGNALBROKER_IP:?Add SIGNALBROKER_IP to the .env file}:50051 ...
with your ip resulting in:
command: ./grpcwebproxy --backend_addr=192.x.x.x:50051 ...
manually.
Running the above
docker-composecommand only needs to be done once. It is persistant over system reboot, and will restart the containers upon reboot, over and over again.
Point your web browser at the machine running Beamybroker, an address like
http://192.0.2.42:8080/. If you are connected to a hosted WLAN Access Point
like beamylabs, the address should be http://192.168.4.1:8080/.
BEWARE: if you change your your interface settings you must restart by do doing STOP/START
NODE_NAME=$(scripts/resolve-ip.sh eth0) SIGNALBROKER_IP=$(scripts/resolve-ip.sh eth0) docker-compose -f docker-compose-full-system.yml downWhen you upgrade; remember to upgrade THIS repository as well
git pull, as examples are continuously updated and improved. You will also find the latest pre-generated grpc files in this repository.
NODE_NAME=$(scripts/resolve-ip.sh eth0) SIGNALBROKER_IP=$(scripts/resolve-ip.sh eth0) ./upgrade.sh
git pullAlternatively just pull the latest container manually:
NODE_NAME=$(scripts/resolve-ip.sh eth0) SIGNALBROKER_IP=$(scripts/resolve-ip.sh eth0) docker-compose -f docker-compose-full-system.yml pull
To pull a specific version you can specify custom tag for BEAMYBROKER_TAG alternatively BEAMYWEBCLIENT_TAG as in:
BEAMYBROKER_TAG=v0.0.7-4-g12 NODE_NAME=$(scripts/resolve-ip.sh eth0) SIGNALBROKER_IP=$(scripts/resolve-ip.sh eth0) docker-compose -f docker-compose-full-system.yml pullThe server is accesible using gRPC, which effectively means that you can access it with your language of choice. Stubs to access the server are generated by providing proto files which contains the api specification.
Pre generated files and samples are avaliable for a selection of languages. If you need another language you can get inspiration by how it's done for python here.
In order to understand usage of the product and it's enviroment it will try and send system information based on your interfaces.json and it's execution enviroment on start. The data is obfuscated and it is not distributed to any other party. Its sole purpose is the make the software better.
This is not mandatoy and can be disabled, however to keep us motivated we would please urge you not to disable this feature.