Your Cloud in a Binary
Your Cloud in a Binary
Gasper is an intelligent Platform as a Service (PaaS) used for deploying and managing applications and databases in any cloud topology.
Imagine you have a couple of Bare Metal Servers and/or Virtual Machines (collectively called nodes) at your disposal. Now you want to deploy a couple of applications/services to these nodes in such a manner so as to not put too much load on a single node.
Your 1st option is to manually decide which application goes to which node, then use ssh/telnet to manually setup all of your applications in each node one by one.
But you are smarter than that, hence you go for the 2nd option which is Kubernetes. You setup Kubernetes in all of your nodes which forms a cluster, and now you can deploy your applications without worrying about load distribution. But Kubernetes requires a lot of configuration for each application(deployments, services, stateful-sets etc) not to mention pipelines for creating the corresponding docker image.
Here comes (🥁drumroll please 🥁) Gasper, your 3rd option!
Gasper builds and runs applications in docker containers directly from source code. You no longer need to create application specific docker images and build pipelines, let Gasper do the heavylifting for you 😊.
Gasper requires minimal parameters for deploying an application, so minimal that you can count them on fingers in one hand 🤚. Same goes for Gasper provisioned databases. Gone are the days of hard labour (writing configurations).
Fear not because the reduction in complexity doesn't imply the reduction in features. You can rest assured because Gasper has:-
Gasper currently supports applications of the following types:-
It ain't much but it's honest work 🥳
The following databases are supported by Gasper:-
It ain't.... (complete the rest yourself)
You can find the complete documentation of Gasper at https://gasper-docs.netlify.com/
The only thing you need for running Gasper is Docker. Here are the installation guides for:-
If you perhaps need a higher degree of control over your entire cloud then you may setup MongoDB and Redis separately within your infrastructure and make the necessary changes in the mongo
and redis
sections of config.toml
.
Assuming you have the dependencies installed, head over to Gasper's releases page and grab the latest binary according to your operating system and system architecture
Run the downloaded binary with the sample configuration file
$ ./gasper --conf ./config.toml
You need to have Golang 1.13.x or higher installed along with the mentioned dependencies
Open your favourite terminal and perform the following tasks:-
Cross-check your golang version.
$ go version
go version go1.13.5 darwin/amd64
Clone this repository.
$ git clone https://github.com/sdslabs/gasper
Go inside the cloned directory and list available makefile commands.
$ cd gasper && make help
Gasper: Your cloud in a binary
install Install missing dependencies
build Build the project binary
tools Install development tools
release Build release binaries
start Start in development mode with hot-reload enabled
clean Clean build files
fmt Format entire codebase
vet Vet entire codebase
lint Check codebase for style mistakes
test Run tests
help Display this help
Setup project configuration and make changes if required. The configuration file is well-documented so you won't have a hard time looking around.
$ cp config.sample.toml config.toml
Start the development server.
$ make start
If you'd like to contribute to this project, refer to the contributing documentation.
Gasper Logo: Leshna Balara @leshnabalara
You can find the entire list of contributors here
Created with 💖 by SDSLabs
If you have a query regarding the product or just want to say hello then feel free to visit chat.sdslabs.co or drop a mail at [email protected]