Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/akash-network/node
Source code for Akash node, a secure, transparent, and peer-to-peer cloud computing network
https://github.com/akash-network/node
akash blockchain containers exchange golang tendermint
Last synced: about 1 month ago
JSON representation
Source code for Akash node, a secure, transparent, and peer-to-peer cloud computing network
- Host: GitHub
- URL: https://github.com/akash-network/node
- Owner: akash-network
- License: apache-2.0
- Created: 2017-09-15T22:55:19.000Z (about 7 years ago)
- Default Branch: main
- Last Pushed: 2024-10-25T18:57:08.000Z (about 2 months ago)
- Last Synced: 2024-10-26T22:21:22.130Z (about 2 months ago)
- Topics: akash, blockchain, containers, exchange, golang, tendermint
- Language: Go
- Homepage: https://akash.network
- Size: 77.3 MB
- Stars: 880
- Watchers: 47
- Forks: 210
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
- awesome-ccamel - akash-network/node - Source code for Akash node, a secure, transparent, and peer-to-peer cloud computing network (Go)
- awesome-repositories - akash-network/node - Source code for Akash node, a secure, transparent, and peer-to-peer cloud computing network (Go)
- best-of-crypto - GitHub
README
# Akash - Decentralized Serverless Network
![tests](https://github.com/akash-network/node/workflows/tests/badge.svg)
[![codecov](https://codecov.io/github/akash-network/node/coverage.svg?branch=main)](https://codecov.io/github/akash-network/node?branch=main)[![Go Report Card](https://goreportcard.com/badge/github.com/akash-network/node)](https://goreportcard.com/report/github.com/akash-network/node)
[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)[![Akash](_docs/img/logo-label-black.svg "Akash")](#overview)
[Akash](https://akash.network) is a secure, transparent, and decentralized cloud computing marketplace that connects those who need computing resources (tenants) with those that have computing capacity to lease (providers).
For a high-level overview of the Akash protocol and network economics, check out the [whitepaper](https://ipfs.io/ipfs/QmVwsi5kTrg7UcUEGi5UfdheVLBWoHjze2pHy4tLqYvLYv); a detailed protocol definition can be
found in the [design documentation](https://docs.akash.network); and the target workload definition spec is [here](https://docs.akash.network/sdl).# Branching and Versioning
The `main` branch contains new features and is under active development; the `mainnet/main` branch contains the current, stable release.
* **stable** releases will have even minor numbers ( `v0.8.0` ) and be cut from the `mainnet/main` branch.
* **unstable** releases will have odd minor numbers ( `v0.9.0` ) and be cut from the `main` branch.## Akash Suite
Akash Suite is the reference implementation of the [Akash Protocol](https://ipfs.io/ipfs/QmdV52bF7j4utynJ6L11RgG93FuJiUmBH1i7pRD6NjUt6B). Akash is an actively-developed prototype currently focused on the distributed marketplace functionality.
The Suite is composed of one binary, `akash`, which contains a ([tendermint](https://github.com/tendermint/tendermint)-powered) blockchain node that
implements the decentralized exchange as well as client functionality to access the exchange and network data in general.## Get Started with Akash
The easiest way to get started with Akash is by following the [Quick Start Guide](https://docs.akash.network/guides/deploy) to get started.
## Join the Community
- [Join Developer Chat](https://discord.com/invite/akash)
- [Become a validator](https://docs.akash.network/validating/validator)## Official blog and documentation
- Read the documentation: [docs.akash.network](https://docs.akash.network)
- Send a PR or raise an issue for the docs [akash-network/docs](https://github.com/akash-network/docs)
- Read latest news and tutorials on the [Official Blog](https://akash.network/blog/)# Supported platforms
Platform | Arch | Status
--- | --- | :---
Darwin | amd64 | ✅ **Supported**
Darwin | arm64 | ✅ **Supported**
Linux | amd64 | ✅ **Supported**
Linux | arm64 (aka aarch64) | ✅ **Supported**
Linux | armhf GOARM=5,6,7 | ⚠️ **Not supported**
Windows | amd64 | ⚠️ **Experimental**# Installing
The [latest](https://github.com/akash-network/node/releases/latest) binary release can be installed with [Homebrew](https://brew.sh/):
```sh
$ brew tap akash-network/tap
$ brew install akash
```Or [GoDownloader](https://github.com/goreleaser/godownloader):
```sh
$ curl -sSfL https://raw.githubusercontent.com/akash-network/node/main/install.sh | sh
```Or install a specific version with [GoDownloader](https://github.com/goreleaser/godownloader)
```sh
$ curl -sSfL https://raw.githubusercontent.com/akash-network/node/main/install | sh -s -- v0.22.0
```# Roadmap and contributing
Akash is written in Golang and is Apache 2.0 licensed - contributions are welcomed whether that means providing feedback, testing existing and new feature or hacking on the source.
To become a contributor, please see the guide on [contributing](CONTRIBUTING.md)
## Development environment
[This doc](https://github.com/akash-network/node/blob/main/_docs/development-environment.md) guides through setting up local development environmentAkash is developed and tested with [golang 1.21.0+](https://golang.org/).
Building requires a working [golang](https://golang.org/) installation, a properly set `GOPATH`, and `$GOPATH/bin` present in `$PATH`.
It is also required to have C/C++ compiler installed (gcc/clang) as there are C dependencies in use (libusb/libhid)
Akash build process and examples are heavily tied to Makefile.## Building from Source
Command below will compile akash executable and put it into `.cache/bin`
```shell
make akash # akash is set as default target thus `make` is equal to `make akash`
```
once binary compiled it exempts system-wide installed akash within akash repo## Running
We use thin integration testing environments to simplify
the development and testing process. We currently have three environments:* [Single node](_run/lite): simple (no workloads) single node running locally.
* [Single node with workloads](_run/single): single node and provider running locally, running workloads within a virtual machine.
* [full k8s](_run/kube): same as above but with node and provider running inside Kubernetes.