Categorygithub.com/curltech/go-colla-node
modulepackage
0.0.3
Repository: https://github.com/curltech/go-colla-node.git
Documentation: pkg.go.dev

# README

The backend node of Colla Network, a decentralized peer-to-peer communication and storage network.

use use use

Table of Contents

Introduction

Colla Network is a decentralized peer-to-peer communication and storage network, Colla DApp (e.g. CollaChat) connects to Colla Network via selected Colla Node, there is no centralized storage and control of user data, user can specify which node or even easily setup own node(s) to connect to.

Build

Optimized Settings

It's recommended to optimize following settings before building your own executable file:

NoPackageFileDefault SettingRecommended Setting
1[email protected]multiplex.govar MaxMessageSize = 1 << 20var MaxMessageSize = 1 << 30
2[email protected]internal\net\massage_manager.govar dhtReadMessageTimeout = 10 * time.Secondvar dhtReadMessageTimeout = 300 * time.Second
3[email protected]network\network.goconst MessageSizeMax = 1 << 22const MessageSizeMax = 1 << 30
4[email protected]msgio.godefaultMaxSize = 8 * 1024 * 1024defaultMaxSize = 1024 * 1024 * 1024

Installation

Get ready your server, domain and certificate first. You may rent a cloud server from CSP (or try on from a free instance), buy a domain or get a free one, use ACME to automatically issue & renew the free certificates from Let's Encrypt.

Tested OS

NoOSVersion and Spec.
1Ubuntu16.04/18.04/20.04, minimal 1vCPUs + 1GiB
2WindowsWindows Server 2016

Linux

  1. Download and uncompress
azureuser@myVM:~$ sudo wget https://github.com/curltech/go-colla-node/releases/download/v0.0.2/go-colla-node-linux-0.0.2.tar.gz
azureuser@myVM:~$ sudo tar zxvf go-colla-node-linux-0.0.2.tar.gz
  1. Configure and run
azureuser@myVM:~$ cd go-colla-node
azureuser@myVM:~/go-colla-node$ vi conf/peer1.yml
azureuser@myVM:~/go-colla-node$ ./main (or ./main -appname peer1)
  1. Use custom node in Colla DApp (e.g. CollaChat)
azureuser@myVM:~/go-colla-node$ sqlite3 peer1.db
sqlite> select discoveryaddress from blc_myselfpeer;
/dns4/peer1.curltech.cc/tcp/5720/wss/p2p/12D3KooWNwQ9pHZzmfjk8rZp4a1k5gXhibKxZMBdkdg1mTJEAYse

login

accountInformation

Windows

Use zip file for Windows instead of tar.gz file for Linux, and follow the same steps as above.

License

Copyright 2020-2021 CURL TECH PTE. LTD.

Licensed under the AGPLv3: https://www.gnu.org/licenses/agpl-3.0.html

# Packages

No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author