Sign inSign up

fluencelabs/nox

By fluencelabs

•Updated almost 2 years ago

Rust implementation of the Fluence network peer. https://github.com/fluencelabs/nox

Image
0

50K+

fluencelabs/nox repository overview

⁠Nox

Nox⁠ is the reference implementation of the Fluence⁠ peer. It is used as a Relay for all Clients and as a Host for all Workers.

⁠Usage

docker run -d --name nox -e RUST_LOG="info" -p 7777:7777 -p 9999:9999 fluencelabs/nox

To get a list of commands that can be passed to nox run:

docker run --rm --name nox fluencelabs/nox --help
⁠Deployment instructions

TODO

⁠Configuration

⁠Nox configuration

Default configuration file is found at Config.default.toml⁠.

All options can be overwriten by env variables:

no_banner = false
bootstrap_nodes = [
  "/dns4/0-node.example.com/tcp/9000",
  "/dns4/1-node.example.com/tcp/9000",
]

[system_services]
  [[aqua_ipfs]]
  external_api_multiaddr = "/dns4/ipfs.example.com/tcp/5001"
  local_api_multiaddr = "/dns4/ipfs.service.consul/tcp/5001"

becomes

FLUENCE_NO_BANNER=false
FLUENCE_BOOTSTRAP_NODES="/dns4/0-node.example.com/tcp/9000,/dns4/1-node.example.com/tcp/9000"
FLUENCE_SYSTEM_SERVICES__AQUA_IPFS__EXTERNAL_API_MULTIADDR="/dns4/ipfs.example.com/tcp/5001"
FLUENCE_SYSTEM_SERVICES__AQUA_IPFS__LOCAL_API_MULTIADDR="/dns4/ipfs.service.consul/tcp/5001"
⁠Docker configuration

Some options are only available as env variables:

vardefaultdescription
FLUENCE_BASE_DIR/.fluenceBase directory for nox persistent data
FLUENCE_CONFIG/.fluence/v1/Config.tomlPath to nox config file
FLUENCE_UID1000UID of a nox user who owns persistent data
RUST_LOGinfohttps://docs.rs/env_logger/0.10.0/env_logger/#enabling-logging⁠

⁠Builtin services

Nox distro comes with preconfigured builtin services.

⁠registry⁠

Registry implements service discovery.

⁠aqua-ipfs⁠

This is a native IPFS integration with Aqua⁠ language. It is used to orchestrate IPFS file transfer with Aqua scripts.

By default connects to an IPFS daemon hosted by Cloudless Labs⁠.

In case you want to use a separately running IPFS daemon, you need to configure aqua-ipfs:

[system_services]
  [[aqua_ipfs]]
  # IPFS multiaddr advertised to clients (e.g., frontend apps) to use in uploading files (ipfs.put), managing pins (ipfs.pin) etc
  external_api_multiaddr = "/dns4/ipfs.fluence.dev/tcp/5001"
  # used by the aqua-ipfs builtin to configure IPFS
  local_api_multiaddr = "/dns4/ipfs.fluence.dev/tcp/5001"
⁠trust-graph⁠

It can be used to create a trusted network, to manage service permissions with TLS certificates and other security related things.

⁠decider and connector⁠

Used to pull contracts and deploy from blockchain.

⁠Documentation

Comprehensive documentation on everything related to Fluence can be found here⁠. Check also our YouTube channel⁠.

⁠Support

Please, file an issue⁠ if you find a bug. You can also contact us at Discord⁠ or Telegram⁠. We will do our best to resolve the issue ASAP.

⁠Contributing

Any interested person is welcome to contribute to the project. Please, make sure you read and follow some basic rules⁠. The Contributor License Agreement can be found here⁠.

⁠License

All software code is copyright (c) Fluence DAO under the AGPL v3⁠ license.

Tag summary

Content type

Image

Digest

sha256:e60e76555…

Size

179 MB

Last updated

almost 2 years ago

docker pull fluencelabs/nox:0.28.2