snare
webapp-tutorial
snare | webapp-tutorial | |
---|---|---|
1 | 3 | |
56 | 10 | |
- | - | |
7.3 | 1.8 | |
3 months ago | almost 3 years ago | |
Rust | Makefile | |
GNU General Public License v3.0 or later | - |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
snare
-
piku: The tiniest PaaS you've ever seen
I have a similar setup, using snare to handle the webhook endpoint: https://github.com/softdevteam/snare
GitHub will call the webhook after a push to main and a successful test suite run. Snare runs a shell script on my server to git pull, build, deploy, and call a cronitor.io hook for monitoring deploy success.
I've been pretty happy with how relatively simple it is and how well it works.
webapp-tutorial
-
piku: The tiniest PaaS you've ever seen
It's actually worth taking your joke seriously to compare and contrast:
- piku deploys via git rather than scp/sftp, but authenticates via ssh like those tools
- piku supports a number of runtimes, including Python, Ruby, Node, Go, Clojure. The runtimes are implemented rather simply, you can add your own rather easily, see examples here in the code: https://github.com/piku/piku/blob/8777cc093a062c67d3bead9a5d...
- For each runtime, a mechanism is utilized to install and isolate package dependencies (requirements.txt in Python, Gemfile in Ruby, packages.json in Node, etc.)
- a Procfile and ENV file are used to declare your application entrypoints, akin to Heroku / 12 Factor App ideas
- a CLI is provided for checking status and logs from the client
- since all applications are managed via uwsgi, there is also some support for cronjob-style tasks
- HTTPS via Let's Encrypt (acme.sh) is handled automagically for web apps
I describe more about how piku works in this tutorial:
https://github.com/piku/webapp-tutorial?tab=readme-ov-file#b...
You're right that PHP apps have a simple deployment story, and in a way piku brings something akin to this level of simplicity to other web programming runtimes.
-
Dokku – Free Heroku Alternative
Also check out piku, especially if you are hosting Python or Node apps:
https://github.com/piku/webapp-tutorial/blob/master/README.m...
It is a way to get the same sort of developer experience benefit as dokku, but without dockers and containers, using plain UNIXy tools on a single Linux node. The above link explains how it works.
What are some alternatives?
ground-init - Install a Linux machine locally with something that is almost, but not quite, cloud-init
dokku-acl - Access Control List management for Dokku.
dokku-builder-nix - Dokku plugin to build images using Nix
go-stdlib - OpenTracing instrumentation for packages in the Go stdlib
flux2 - Open and extensible continuous delivery solution for Kubernetes. Powered by GitOps Toolkit.
github-action
piku - The tiniest PaaS you've ever seen. Piku allows you to do git push deployments to your own servers.
metadataproxy - A proxy for AWS's metadata service that gives out scoped IAM credentials from STS
rupy - HTTP App. Server and JSON DB - Shared Parallel (Atomic) & Distributed
dokku-scheduler-kubernetes - Scheduler plugin for deploying applications to kubernetes
Stack Up - Super simple deployment tool - think of it like 'make' for a network of servers
Dokku - A docker-powered PaaS that helps you build and manage the lifecycle of applications