-
piku
The tiniest PaaS you've ever seen. Piku allows you to do git push deployments to your own servers.
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.
-
InfluxDB
Purpose built for real-time analytics at any scale. InfluxDB Platform is powered by columnar analytics, optimized for cost-efficient storage, and built with open data standards.
-
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.
-
-
-
-
-
First time I read about piku. I have no idea why, but the feeling of `git push` to initiate a deployment like piku does always felt magical to me. There's nothing simpler than that.
This is timely for me as well as I just open sourced (yesterday!) a project that is in the same space, but for Kubernetes (https://github.com/pier-oliviert/sequencer).
All of this to say, congrats! It looks great.
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
-
git clone 'https://github.com/piku/piku-bootstrap' 'piku-bootstrap' && \
-
ground-init
Install a Linux machine locally with something that is almost, but not quite, cloud-init
Maintainer and co-author here. If you like simple, minimalist deployment tools, check out https://github.com/rcarmo/ground-init for a very much down to earth take on cloud-init…
-
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.
-
I like Epinio which does the same but on top of kubernetes. It is backed by Suse and lightweight compared to KNative (which is the basis of GCP CloudRun for example), but being kubernetes based still requires more Resources than dokku or Piku. I still prefer k8s due to the vast ecosystem of mature solutions. And I can still run everything on a single box, it just needs to be a bit bigger. The new Hetzner CX42 with 8 vCPUs, 16 GB of RAM, and 160 GB of disk space for € 16.40 a month (€ 0.0273 per hour) is sufficient, and with the Kube Hetzner Project I can set up a kubernetes cluster with auto updating microos in 5 minutes.
https://github.com/epinio/epinio/
https://github.com/kube-hetzner/terraform-hcloud-kube-hetzne...
-
terraform-hcloud-kube-hetzner
Optimized and Maintenance-free Kubernetes on Hetzner Cloud in one command!
I like Epinio which does the same but on top of kubernetes. It is backed by Suse and lightweight compared to KNative (which is the basis of GCP CloudRun for example), but being kubernetes based still requires more Resources than dokku or Piku. I still prefer k8s due to the vast ecosystem of mature solutions. And I can still run everything on a single box, it just needs to be a bit bigger. The new Hetzner CX42 with 8 vCPUs, 16 GB of RAM, and 160 GB of disk space for € 16.40 a month (€ 0.0273 per hour) is sufficient, and with the Kube Hetzner Project I can set up a kubernetes cluster with auto updating microos in 5 minutes.
https://github.com/epinio/epinio/
https://github.com/kube-hetzner/terraform-hcloud-kube-hetzne...