Leichte selbst gehostete Lambda/Anwendungen/CGI/serverlose Funktionen Engine.
Siehe Dokumente
Merkmale:
Ps
Es gibt eine minimale Version von Trusted-CGI: Nano-Run. Überprüfen Sie es aus-es devOps freundlich mit Konfigurationsansatz (dh einfacher zu verwenden für Infrastruktur-AS-A-Code).
Seit 0.3.3 Linux, Darwin und sogar Windows OS unterstützt: Vorgefertigte Binärdateien finden sich in Veröffentlichungen
Tl; dr;
apt.reddec.dev (siehe Docs)docker run --rm -p 3434:3434 reddec/trusted-cgi ).Siehe Installationshandbuch
Der Prozessfluss ist recht einfach: Ein leichter Daemon im Hintergrund hört auf Anfragen zu und startet Skripte/Apps auf Bedarf. Eine ausführbare Datei muss die Standardeingabe (STDIN) für Anforderungsdaten lesen und eine Antwort auf die Standardausgabe (STDOut) schreiben.
Technisch gesehen sollte jedes Skript/jede Anwendung, die Stdin analysieren und etwas an STDOut schreiben kann, zur Ausführung in der Lage sein.
Trusted-CGI hat berücksichtigt, dass Eingabein- und Ausgabedaten recht gering sind und strukturierte Daten (JSON/XML) enthält. Auf der Plattform selbst gibt es jedoch keine Einschränkungen.
Wichtige Unterschiede mit klassischem CGI:
Aufgrund von Änderungen ist es möglich, das einfachste Skript mit JSON -Eingabe und Ausgabe wie folgt zu erstellen:
import sys
import json
request = json . load ( sys . stdin ) # read and parse request
response = [ 'hello' , 'world' ] # do some logic and make response
json . dump ( response , sys . stdout ) # send it to clientBeachten Sie, dass die Plattform auch eine wachsende Anzahl neuer Funktionen hinzufügt - siehe Funktionen.
Zielgruppe
Es ist am besten (aber nicht begrenzt) für
Wenn Ihre Projekte jedoch die Plattformeinschränkungen bewachsen haben, sollte es recht einfach sein, auf andere Lösungen zu migrieren, da die meisten Details mit niedrigem Niveau versteckt sind und in wenigen Tagen ersetzt werden können (im Grunde genommen - nur das Skript mit dem HTTP -Dienst einwickeln).
Außerdem ist es möglich, die Plattformleistung zu skalieren, indem nur dieselben Instanzen der Plattform mit einem gemeinsam genutzten Dateisystem (oder Docker -Bildern) mit einem Balancer vorhanden sind.
Die Plattform ist ein ganz einfaches Golang -Projekt mit Vue + Quasar Frontend und sollte für Neuankömmlinge einfach sein. Vorbehalte und Tipps für die Backend -Prüfung hier
Für UI-Unter-Repo überprüfen
Jeder PR (Dokumente, Code, Stile, Funktionen, ...) wird sehr hilfreich sein!
Bitte beachten Sie, dass Linux (einschließlich WSL2) oder Darwin hauptsächlich für die Entwicklung verwendet wird, daher die meisten Helfer -Skripte für diese Betriebssysteme.
Anforderungen:
go.mod )Für den Multiplatform -Build benötigen Sie möglicherweise Bintools:
docker run --privileged --rm tonistiigi/binfmt --install all