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
braidnetonto 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()}
]}
].