An OTP application to spawn containers and orchestrate communication between them and their peers hosted by remote braidnet instances.
We currently only support Fly.io as cloud infrastracture.
- Deploy a single braidcert instance to be the root of trust in the internal PKI.
- Deploy
braidnet
onto host machines. - Build docker conteiners with your Erlang Apps using braidnode.
- Finally, use braid to define your node connections and deploy your applications.
rebar3 compile
Start braidcert first in a separate shell, then:
rebar3 shell
Braidnet will only be able to start up if it can connect to a braidcert instance.
For now, braidnet is meant to be deployed on Fly.io.
Create a new Fly application, replace the value of the app
field
in the fly.toml
file in this repo with your Fly app's name,
and deploy using flyctl
.
To interface with braidnet and deploy applications, use braid.
When braidnet is ran via the rebar3 shell, config/shell.config
applies.
When the relx release is ran, config/container.config.src
(and
config/container.vm.args.src
) apply.
The possible configuration values are:
[
{braidnet, [
% HTTP Bearer authetication token between braid and braidnet:
{rest_api_token, binary()},
% braidcert Fly.io app URL:
{braidcert_url, string()},
% HTTP Bearer authetication token between braidcert and braidnet:
{braidcert_key, string()}
% Enable only accepting signed Docker images:
{docker_trust, boolean()}
]}
].