LogoLogo
WebsiteTechnical Discussions
Developer documentation
Developer documentation
  • Public Technical Documentation
    • device-management-service
      • main
        • actor
        • api
        • cmd
          • actor
          • cap
        • db
          • repositories
            • clover
        • dms
          • behaviors
          • jobs
          • node
          • onboarding
          • resources
        • docs
          • deployments
          • onboarding
          • private_network
        • executor
          • docker
          • firecracker
          • background_tasks
          • config
          • hardware
        • maint-scripts
        • network
          • libp2p
        • observability
        • specs
          • basic_controller
          • s3
          • volume
          • integration
        • tokenomics
        • types
        • utils
          • validate
      • release
        • actor
        • api
        • cmd
          • actor
          • cap
        • db
          • repositories
            • clover
        • dms
          • behaviors
          • hardware
          • jobs
          • node
          • onboarding
          • resources
        • docs
          • deployments
          • onboarding
          • private_network
        • executor
          • docker
          • firecracker
        • internal
          • background_tasks
          • config
        • maint-scripts
        • network
          • libp2p
        • observability
        • plugins
        • specs
        • storage
          • basic_controller
          • s3
          • volume
        • test
        • tokenomics
        • types
        • utils
          • validate
    • solutions
      • asi-node
        • main
          • demos
            • ocap_auth
              • ansible
              • videos
          • did-auth-use-scenarios
            • create-a-hosting-deployment
            • make-a-payment
            • manage-dids-and-ocaps
            • register-an-ai-agent
            • submit-a-compute-job
          • pilots
            • asi-create-authentication-poc
        • release
      • nunet-appliance
        • main
        • release
    • test-suite
      • main
        • cicd
          • tests
            • feature_environment
          • cli
          • dms-on-lxd
            • local
        • environments
          • development
          • feature
          • production
          • staging
        • infrastructure
          • cloud-init
          • dms-on-lxd
          • nginx
        • lib
        • stages
          • dependency_scanning
          • functional_tests
          • integration_tests
          • load_tests
          • regression_tests
          • security_tests_1
          • security_tests_2
          • security_tests_live
          • unit_tests
          • user_acceptance_tests
      • release
        • cicd
          • tests
            • feature_environment
          • cli
          • dms-on-lxd
            • local
        • environments
          • development
          • feature
          • production
          • staging
        • infrastructure
          • cloud-init
          • dms-on-lxd
          • nginx
        • lib
        • stages
          • dependency_scanning
          • functional_tests
          • integration_tests
          • load_tests
          • regression_tests
          • security_tests_1
          • security_tests_2
          • security_tests_live
          • unit_tests
          • user_acceptance_tests
    • team-processes-and-guidelines
      • main
        • best_practices
        • ci_cd_pipeline
        • community_feedback_process
        • contributing_guidelines
        • git_workflows
        • nunet_test_process_and_environments
        • secure_coding_guidelines
        • specification_and_documentation
        • team_process
          • a_project_management
          • b_ceremonies_artifacts
          • c_drum_buffer_rope
          • d_development_process
          • e_culture_rules
          • f_mr_review
        • vulnerability_management
          • devsecops_maturity_models
          • nunet_security_pipeline
          • secret_management
          • sop_security_mr_review
Powered by GitBook
On this page
  • NuNet Appliance Documentation
  • What is NuNet?
  • What is the NuNet Appliance?
  • Installation Instructions
  • The NuNet Appliance Menu
  • Basic Operations
  • Manage NuNet DMS
  • Manage Ensembles
  • Enhanced Ensemble Management(Beta)
  • View Peer Details
  • Run Depin Nodes Locally
  • Viewing Logfiles
  • Manage NuNet Appliance
  • Troubleshooting
  • Need Help?
Export as PDF
  1. Public Technical Documentation
  2. solutions
  3. nunet-appliance

main

Previousnunet-applianceNextrelease

Last updated 11 hours ago

Last updated: 2025-05-15 01:09:00.522527 File source:

NuNet Appliance Documentation

What is NuNet?

NuNet decentralizes computing into a peer-to-peer network of devices, that creates a self-balancing “world computer” where anyone can contribute resources, monetize data, or access affordable computation. NuNet utilizes a tool called the Device Management System(DMS) to achieve the connection, management and utilization of these resources.

What is the NuNet Appliance?

The NuNet Appliance allows for easy device onboarding and management of the NuNet DMS. At the moment, the NuNet Appliance operates inside a VM, ensuring isolation, a consistent environment and ease of management.

The Appliance provides a uniform environment to run the DMS in. The DMS running in the appliance provides:

  • Actor System - Runs automated tasks and services

  • Peer Networking - Connects with other nodes in the network

  • Ensemble Management - Coordination of complex computing tasks

Installation Overview

Prerequisites

  • A stable internet connection is required for a smooth installation process.

  • VirtualBox installed

  • Appliance Image (Provided via NuNet official channels)

  • At least 4GB+ RAM, 20GB+ Disk Space

Installation Instructions

  • Download the appliance from the link shared with you via Email or Discord. It is extremely important to make sure the email is from nunet before clicking on any links.

  • With VirtualBox running, double click on the appliance, this will automatically open the appliance in VirtualBox

  • Although resources are automatically allocated initially, you can adjust the allocated resources in VirtualBox Settings.(Mininum recommended: 2 CPUs, 4GB RAM, 20GB Disk Space)

DMS is initialized, enabled and started automatically when the appliance installation is complete. It auto-starts with default configuration, hence, you do not need to do these again after a successful installation. Upon a successful installation, you will find a landing screen similar to the one shown below.

The NuNet Appliance Menu

On the NuNet Appliace Menu, you can find a status area that shows important information about the appliance running on your machine.

The status section has the following displayed system information:

Local IP Address: This is the local IP address of your machine, e.g., 192.x.x.x

Internet IP Address: Your internet IP address, e.g., 82.x.x.x

Appliance Version: The version of the NuNet appliance running on your machine, e.g., v1.4.0

Branch: The branch from which the appliance menu has been served from, e.g., main

Menu Version: The appliance menu version. Note that this is different from the Appliance version. This is deprecated and will be replaced by the Aplliance Version. e.g., 0.33

Automatic Security Updates: Confirms if security updates are enabled or not, with last update timestamp

Docker Status: Tells the status of docker on the appliance running on your machine e.g., Running

SSH Status: If you have enabled SSH on the appliance, you will find the status and the number of authorised keys here.

DMS Status: Installed with version

Running Context: The context of the currently e.g., dms

DMS DID: DMS Decentralized Identifier assigned to your appliance

DMS Peer ID: Unique identifier of your peer on the NuNet network

NuNet Network Connection Type: e.g., Direct connection

Note: You can interact with the appliance using the numbers on the menu item. For example, when you first land on the menu, you can select Manage NuNet DMS by inputing 1 when prompted.

Basic Operations

Manage NuNet DMS

The Manage NuNet DMS menu item, also option 1, allows for basic DMS operations, including Starting/Restarting/Stopping the DMS, Enabling/Disabling the DMS, Initializing the DMS, Onboarding/Offboarding compute, e.t.c.

Note: The difference between Starting/Restarting the DMS and Enabling/Disabling the DMS, lies in the permanence of the operation. Start/Restart DMS temporarily pauses the DMS service without affecting its boot-time behaviour. Conversely, Enabling/Disabling the service permanently decomissions the DMS and affects the boot time behavior of the DMS.

Onboard Compute

When the appliance is running and you can see the menu, you can onboard resources by selecting the first item on the menu Manage NuNet DMS with the input 1. You will see a sub-menu that includes a number of things you can do with the DMS. Select option 6 to onboard maximum resources. You can adjust the amount of resources you'd like to allocate to the appliance by going to virtual box, selecting the appliance and adjusting CPUs in the System section or RAM and Disk Storage in Storage section. Not that these adjustments can only be done when the appliance is not running.

  Main Menu → 1. Manage NuNet DMS → 6. Onboard Compute

Offboard Compute

To offboard compute, select the first item on the menu Manage NuNet DMS with the input 1. You will see a sub-menu that includes a number of things you can do with the DMS. Select option 7 to offboard comoute.

  Main Menu → 1. Manage NuNet DMS → 7. Offboard Compute

View Connected Peers

The View Connected Peers option allows you to view other peers on the network by peer ID. Select the first item on the menu Manage NuNet DMS with the input 1. Select option 9 to view other peers on the network.

  Main Menu → 1. Manage NuNet DMS → 9. View Connected Peers

View Self Peer Information

You can view information about your machine as a peer on the network with the View Self Peer Information. Select option 1, Manage NuNet DMS then option 10 to view your DID, Peer ID, DMS context and Network Addresses.

  Main Menu → 1. Manage NuNet DMS → 10. View Self Peer Info

Update DMS to Latest Version

To update the DMS version running on your machine use the Update DMS to Latest Version option. Select option 1, Manage NuNet DMS then option 11 to update your DMS version.

  Main Menu → 1. Manage NuNet DMS → 11. Update DMS to Latest Version

View Full DMS Status

Visualise the full status of the DMS running in your appliance with this option. Here, you will find the DMS Onboarding status, free and allocated resources, onboarded resources, running context, DMS DID and DMS peer ID of the DMS running in your machine. Select option 1, Manage NuNet DMS then option 12 to update your DMS version.

  Main Menu → 1. Manage NuNet DMS → 12. View Full DMS Status

Manage Ensembles

View Running Ensembles

You can view running ensembles(deployments) on your machine by selecting option 2 Manage Ensembles and then sub-option 1.

  Main Menu 2. Manage Ensembles → 1. View Running Ensembles

Deploy an Ensemble

With the right capabilities, you can run an ensemble with the Deploy an Ensemble option. Capabilities are granted by an organisation admin. In the future, you will be able to have the option to run an ensemble locally on your node.

  Main Menu 2. Manage Ensembles → 2. Deploy an Ensembles

Manage Ensemble Templates

The Manage Ensemble Templates option allows you to perform basic operations on an Ensemble file, such as open, copy and delete. If you do have an ensemble file on the appliance, you will be able to open/copy/delete the file from here.

  Main Menu 2. Manage Ensembles → 3. Manage Ensemble Templates

Download Example Ensemble Templates

This menu option allows you download an example ensemble template from the NuNet repository. Downloaded templates are stored in your local ensembles directory.

  Main Menu 2. Manage Ensembles → 4. Download Example Templates

Enhanced Ensemble Management(Beta)

Select an ensemble

With a list of ensembles(deployments) and their statuses displayed on the Enhanced Ensemble Manager dashboard, the Select an ensemble options allows you select one by their number, if any.

  Main Menu 20. Enhanced Ensemble Management → 1. Select an ensemble

Deploy an Ensemble

With the right capabilities, you can deploy a new ensemble. With this option, you can download an example ensemble if you do not have any on your running appliance.

NB: Capabilities are granted by an organisation admin.

  Main Menu 20. Enhanced Ensemble Management → 2. Deploy an Ensemble

Refresh List

The list of deployments on the Enhanced Esemble Management table does not refresh automatically. They can be refreshed by selecting Refresh List.

  Main Menu 20. Enhanced Ensemble Management → 3. Refresh List

Toggle Help

Toggle Help flips the switch on help information on the Enhanced Ensemble Management page. You can toggle a display of text that gives more information on the page by selecting this option.

  Main Menu 20. Enhanced Ensemble Management → 8. Toggle Help

View Peer Details

The View Peer Details option allows you to view a list of peers on the network by peer ID.

  Main Menu → 3. View Peer Details

Run Depin Nodes Locally

The Run Depin Nodes Locally option, allows you to run decentralised physical infrastructure(DePin) nodes. At the moment, this feature is in Beta. Contact the NuNet team on Discord to create DePin Nodes.

Connecting To an Organisation

You can connect to an organisation by selecting option 5 on the main menu. Selecting this option gives you a list of organisations you can join. Read all the instructions and proceed following the direction of the prompts. In the future, you will be able to create a custome organisation and allow other peers to join the organisation. At the moment, you can join the NuNet Compute Testnet Organisation.

  Main Menu → 5. Connect to Organizations → 1. NuNet Compute Testnet

Viewing Logfiles

The View Logfiles option provides an interactive menu for users to access different log files related to the DMS. The menu presents two primary options: viewing the DMS log and viewing the deployments history log. Each option retrieves and displays the relevant log data.

Manage NuNet Appliance

The Manage NuNet Appliance menu allows for managing various aspects of the NuNet appliance. The available options include changing the active branch, checking for updates, managing plugins, handling backups, enabling SSH access, and controlling automatic security updates.

Change Active Branch

With the Change Active Appliance option, you can change the branch from which the appliance is served. By default, the active branch is the main branch. You can change the branch by entering the branch you want to serve the appliance from.

Installing Appliance Updates

Use this to option to see if a newer version of the NuNet appliance is available. It compares your current version with the latest version available on GitLab. When complete, you'll need to restart the menu to use the new version.

Re-Download Menu

You can completely re-download a fresh copy of the menu from GitLab. It asks which branch you want to download from (defaulting to the main branch) and gives you a warning before proceeding since this will overwrite your current menu files. After completion, you must restart the menu to use the fresh version.

Manage Plugins

The Manage Plugins menu option handles all plugin-related operations. This option is in Beta.

Backup Appliance

The Backup Appliance option creates a compressed backup file of your important appliance configuration including your settings, version, branch, and plugins. The backup is saved with a timestamp in its name so you can identify when it was created. You can use this regularly or before making major changes to your appliance.

Restore from Backup

The Restore from Backup option lets you restore your appliance configuration from a backup file you created earlier. You need to provide the exact backup filename. After restoration, you'll need to restart the menu for changes to take effect. Use this if you need to revert to a previous working configuration.

Enabling SSH Access

The Enable SSH Access runs a special script that helps set up SSH access to your appliance. This is useful if you need command line access to your appliance. The script will guide you through necessary configuration steps.

Step 1: System Compatibility Check

To connect to your appliance via SSH, first, the system checks if you're running on a Debian-based system (like Ubuntu). This is important because the SSH setup process can vary between different Linux distributions. If you're not on a compatible system, it'll tell you and exit.

Step 2: Preparing the SSH Environment

Before doing anything with your keys, the system makes sure your SSH directory exists and has the right permissions. The permissions are important because SSH is very particular about security.

Step 3: Network Detection and Warning

Step 4: Web Interface Setup

Step 5: Key Generation (Optional)

If you choose to generate a new keypair, the webpage can create a secure keypair directly in your browser. Click on Generate SSH Keypair. The keys automatically download to your computer, and the public key gets inserted into the form for you.

NB: The system warns you that this might take 10-20 seconds and could trigger browser security warnings about the downloads.

Step 6: Password Protection

To prevent random people from adding keys, the system generates a random password (like "blue-wolf") that's shown in your terminal. You'll need to enter this on the webpage to submit your key.

Step 7: Key Validation

When you submit a key, the system carefully checks that it's properly formatted. It looks for standard SSH key prefixes and valid base64 encoding. This validation prevents you from accidentally entering garbage that would lock you out of your system later.

Step 8: Final Confirmation

After receiving your key through the web interface, the system shows you the key in the terminal and asks for one last confirmation before writing it to your authorized_keys file. This is your final chance to double-check everything looks right. If you confirm, it carefully appends the key to the file with proper permissions.

The whole process is designed to balance security with user-friendliness, so you can go through what can normally be a technical process while maintaining strong security practices throughout. The web interface makes it accessible even if you're not comfortable with command line SSH tools, while the various checks and confirmations ensure you don't accidentally lock yourself out of your own system.

Troubleshooting

Common Issues
Symptom Solution

DMS Not Starting

Restart DMS (Main Menu → 1. Manage NuNet DMS → 1. Start/Restart DMS)

Connection Issues

Check VM network settings

Resource Errors

Verify allocations in VirtualBox

Need Help?

If you encounter any issues or need assistance, feel free to reach out:

  • Email: support@nunet.io

Happy testing, and thank you for being part of the NuNet Appliance Installer Testnet!

Download and install VirtualBox for your machine type. Visit the

The appliance landing screen
Manage NuNet DMS menu
Manage Ensembles Image

The Enhanced Esemble Management option provides for a fine grained management of ensembles.

The system then checks your network situation by looking at your IP addresses. If it finds public IP addresses (meaning your appliance might be internet-accessible), it gives you a warning. At this point, you'll find the link with which you can access a web page to connect via SSH.

The system displays a webpage. This page serves two main purposes: it lets you paste an existing SSH public key, or generate a brand new keypair right in your browser.

Community Forum:

link on GitLab
official virtual box downloads page to download virtual box
Join here