☁️
Züs
  • About Züs
  • Concepts
    • Architecture
      • Mining on the Züs Blockchain
        • Onboarding a New Miner or Sharder
        • Block Production Protocol
        • Block Finalization
        • Merkle Patricia Trees(MPT) and Recovery
        • View Change and Distributed Key Generation(DKG)
      • Payment
      • Storage
      • Token Bridge Protocol
      • Resources
    • Tokenomics
      • Staking Process
      • Block Rewards
      • Delegation
    • Store
    • Earn
    • Build
    • NFT
  • Resources
    • Whitepapers
      • Tokenomics Paper
      • Architecture Paper
      • Storage Paper
    • Patents
      • NON-FUNGIBLE TOKEN BLOCKCHAIN PROCESSING
      • FREE STORAGE PROTOCOL FOR BLOCKCHAIN PLATFORM
      • TRANSFERRING CONTENT VIA PROXY RE-ENCRYPTION
      • STREAMING CONTENT VIA BLOCKCHAIN TECHNOLOGY
      • SPLIT-KEY WALLET ACCESS BETWEEN BLOCKCHAINS
      • ENFORCING SECURITY PARAMETERS SPECIFIED BY AN OWNER ON A BLOCKCHAIN PLATFORM
      • CLIENT AUTHENTICATION USING SPLIT KEY SIGNING ON A BLOCKCHAIN PLATFORM
      • BLOCKCHAIN CONTENT PURCHASING PROTOCOL
      • BLOCKCHAIN BASED PRIVACY COMPLIANCE PLATFORM
      • SYSTEMS AND METHODS OF SELF-ADMINISTERED PROTOCOLS ON A BLOCKCHAIN PLATFORM
      • SYSTEMS AND METHODS OF AGGREGATE SIGNING OF DIGITAL SIGNATURES ON MULTIPLE MESSAGES SIMULTANEOUSLY U
      • SYSTEMS AND METHODS OF BLOCKCHAIN PLATFORM FOR AUTOMATED ASSET BASED PROVISIONING OF RESOURCES
      • SYSTEMS AND METHODS OF SELF-FORKING BLOCKCHAIN PROTOCOL
      • SYSTEMS AND METHODS OF SUSTAINABILITY PROTOCOL USING DISTRIBUTED BLOCKCHAIN APPLICATION WITH IoT SEN
      • SYSTEMS AND METHODS OF BLOCKCHAIN PLATFORM FOR DISTRIBUTED APPLICATIONS
  • API Reference
    • Endpoints
      • Block
      • Client
      • Connection
      • DNS
      • File
      • Smart Contracts
      • Blobber Stats
      • Transactions
      • Miners and Sharders
        • Stats
        • State
        • Diagnostics
        • Configuration
        • Smart Contract State
        • Smart Contract Stats
        • Chain Stats
  • Hackathon
    • Register to Hackathon
      • How to Add Members to Hackathon Team
    • Repos
    • Documentation
  • Products
    • Bolt
      • Get Started
      • Stake
      • Activity
      • Buy ZCN
      • Sell ZCN
      • Send Tokens
      • Receive Tokens
      • Settings
        • Manage Profile
        • Wallet
        • Read Pool
      • Troubleshooting
    • Vult
      • Sign Up
      • Upload File
      • Upload an Encrypted File
      • Upload a File to a Folder
      • Share a Uploaded File
      • Move a Uploaded File
      • Delete a File
      • Make File Available Offline
      • Troubleshooting
    • Atlus
      • Dashboard Overview
      • Service Providers
      • Charts
        • Market Charts
        • Network Charts
        • Storage Charts
        • Züs Explainer
      • Blockchain
      • Server Map
    • Blimp
      • Sign Up
        • Buy ZCN for Storage
      • Use Blimp as Direct Storage
      • Use Blimp as S3 Server
        • S3 Operations
      • Use Blimp for Cloud Migration
      • Manage Allocations
        • Extend Size
        • Extend Duration
        • Add Blobber
        • Replace Blobber
        • Make allocation Immutable
        • Freeze Allocation
        • Cancel Allocation
    • Chimney
      • Get Started
      • Deploy Blobber on Own Server
      • Deploy Blobber on Rented Server
      • Stake Blobber
      • Add Blobber
      • Monitor Blobbers
      • Visualize Blobber Logs
      • View Blobber Rank
    • Chalk
      • Sign Up
      • Create NFT Collection
        • Buy ZCN for NFT via ERC token
        • Buy ZCN for NFT via Credit card
      • Explore NFT Collections
      • My NFTs
      • Profile
        • Withdraw Earnings
        • Manage Collections
  • Guides
    • Zus GO SDK
    • Zus JS SDK
    • Zbox CLI
      • Repo
      • Get Started
      • Creating and Managing Allocations
      • Uploading and Managing Files
      • Lock and Unlock Tokens
      • Tips and Troubleshooting
    • Zwallet CLI
      • Repo
      • Get Started
      • Zwallet Operations
      • Staking on miners and sharders
      • Burn and Mint Tokens using Zwallet
      • Troubleshooting
    • Add a Blobber
      • Repo
      • Getting Started
    • Add a Miner/Sharder
      • Repo
      • Getting Started
    • Setup a Blockchain
      • Repo
      • Quickstart
        • Understand the Script
      • Step 1: Set up the project
      • Step 2: Setup the network for Züs components
      • Step 3: Initialize and Build the Züs components
      • Step 4: Start Sharder and Miner Containers
      • Step 5 : Create a wallet using zwalletcli
      • Step 6: Starting the blobber containers
      • Step 7: Validate Züs deployment
      • Step 8: Creating an Allocation on Blobber
      • Restarting Sharder and Miner Containers with CleanDB.
      • Additional Tips and Troubleshooting
    • Glossary
  • Support
    • Help Center
      • Community
      • Issues on Github
      • Contact Us
Powered by GitBook
On this page
  • System Requirements
  • Prerequisites
  • Docker
  • Go
  • Download the Script
  • Deployment Process
  • Redeploying the network
  1. Guides
  2. Setup a Blockchain

Quickstart

PreviousSetup a BlockchainNextUnderstand the Script

Last updated 1 year ago

System Requirements

Required Free Space: 20 GB RAM: 8GB Minimum,16 GB Minimum for Windows Setup. CPU: 8 Core CPU Minimum, 16 Core CPU Recommended OS: Linux (Ubuntu Preferred) Version: 20.04 and Above Mac(Apple Silicon or Intel) Version: Big Sur and Above Windows(Requires ) Version: Windows 11 or 10 version 2004 and above.

Note: Before proceeding further with the guide, setting up Windows Subsystem LInux(WSL) on Windows requires additional steps which can be found

Prerequisites

Docker

Docker is available for Linux, macOS and Windows platforms. Find instructions for the preferred operating system . Note: Docker Desktop for Windows provides WSL 2 backend support so you can work in a Linux-based development environment and build ,run linux-based containers. Enable that by following the instructions before proceeding further.

Go

Go installation instructions for different operating systems can be found

Download the Script

Deployment Process

  1. Create a New Directory: Start by creating a dedicated folder to store your deployment script.

mkdir chaindeploy
  1. Open Terminal and Set Execution Permissions: Grant execute permissions to the deployment script using the following command:

chmod +x deployment.sh
  1. Initiate Deployment: Run the deployment script using the command:

./deployment.sh
  1. Configure for Local or Server: The script will prompt you to specify whether you are deploying for a local environment or a server. Choose the option that aligns with your intended deployment scenario.

ubuntu@Züs:~/chaindeploy$ ./deployment.sh
+ echo 'Choose deployment option:'
Choose deployment option:
+ echo '1. Local'
1. Local
+ echo '2. Server'
2. Server
+ read -p 'Enter your choice (1/2): ' choice
Enter your choice (1/2): 1
  1. Directory Creation: The script will create a dedicated directory named 'zus-repos' and proceed to clone all the required repositories inside this folder.

  2. Note: During the deployment the script at Building Mocks in Progress stage will take 5-10 mins(depending on internet connection). Let that complete and not terminate the process in between until Mocks Build completed is displayed. See code snippet for reference:

+ echo 'Build-Mocks in progress'
Build-Mocks in progress
+ make build-mocks
+ echo ' Build-Mocks completed'
 Build-Mocks completed
  1. Deployment Success: Upon successful execution of the script, you will have the following Züs components as docker containers deployed on your local machine:

  • 2 Sharders that stores the blockchain and other related data, such as the event database. They also support a query REST API.

  • 3 Miners for producing blocks.

  • 6 Blobbers/Validators for storing user data files .

  • 1 0dns for communication between miner sharder and blobbers.

Redeploying the network

To rebuild and restart the sharders miners and blobber containers with no previous file and processes:

Stop all the running containers using the command below.

docker stop $(docker ps -a -q)

Clean up Docker environment for new Züs deployment .

docker system prune -a 

Delete the created zus-repos directory by the script manually.

sudo rm -r zus-repos

Rerun the deployment script

./deployment.sh

Local Deployment Configuration: If you opt for local deployment, the script will make specific configuration changes to the DNS settings in the configuration file() created at $HOME/.zcn directory path. For blockchain network to work seamlessly in a local environment, the block worker URL in config.yaml is set to http://198.18.0.98:9091/dns automatically.

Follow

Follow to create an allocation on local Züs blockchain network and complete the deployment process.

To understand the working of the deployment script, please refer to the "" section.

Facing any errors? Try .

config.yaml
Step 7 to check whether containers are running properly.
Step 8 from here
Understanding the Tech
Redeploying the network
WSL
2
here.
here
here
here .
5KB
deployment.sh