Anmelden

On-Premise-Installation

Labelixa auf Ihrem eigenen Server betreiben: Umgebungsvariablen, Docker-Bereitstellung, eigene Schriften und die zustandslose Architektur.

Der Renderdienst ist bewusst zustandslos: Eingehendes ZPL wird weder auf die Festplatte geschrieben noch protokolliert. Das ist für den Datenschutz (DSGVO) wichtig und erleichtert die horizontale Skalierung — Sie fügen einfach Worker oder Server hinzu.

Umgebungsvariablen

VariableZweckStandard
LABELIXA_DBSQLite-Datenbankpfad (Konto/Nutzung)./labelixa.db
DATABASE_URLPostgreSQL-Verbindung (statt SQLite)keine
LABELIXA_FONTEigene Textschrift (TTF-Pfad)Liberation Sans Bold
STRIPE_SECRET_KEYStripe-Geheimschlüssel (Abonnements)keiner
STRIPE_WEBHOOK_SECRETStripe-Webhook-Signaturgeheimniskeines
STRIPE_PRICE_STARTERStripe-Preis-ID für den Starter-Tarifkeine
STRIPE_PRICE_PROStripe-Preis-ID für den Professional-Tarifkeine
STRIPE_PRICE_ENTERPRISEEnterprise-Preis-ID (On-Prem)keine
STRIPE_PRICE_*_YEARLYJahres-Preis-IDs der Tarifekeine
SITE_URLKanonische Domain auf SEO-Seitenaus der Anfrage
CORS_ORIGINSErlaubte Ursprünge (kommagetrennt)* (alle)
LABELIXA_VEKILReverse-Proxy-Topologie (welcher Identitäts-Header vertraut wird); außerhalb von Cloudflare auf 'genel' setzencloudflare
LOG_JSONEin JSON-Objekt pro Logzeile0
LOG_LEVELLog-Stufe (DEBUG|INFO|WARNING|ERROR)INFO
METRICS_TOKENAktiviert den Prometheus-Endpunkt /metrics (ohne ihn geschlossen)keiner
WEB_CONCURRENCYAnzahl der uvicorn-Worker2

Betrieb mit Docker

Das Dockerfile im Wurzelverzeichnis erstellt ein einzelnes Image:

bash
docker build -t labelixa .
docker run -p 8000:8000 \
  -e LABELIXA_DB=/data/labelixa.db \
  -e LABELIXA_FONT=/fonts/MyFont.ttf \
  -v $PWD/data:/data -v $PWD/fonts:/fonts labelixa

Eigene Schrift

Die integrierten Schriften von Zebra (Schrift 0 = CG Triumvirate Bold Condensed) sind proprietär und nicht Teil des ZPL-Codes; das ZPL trägt nur die Nummer, Höhe und Breite der Schrift. Standardmäßig wird die nach Breite nächstgelegene offene Schrift, Liberation Sans Bold, verwendet. Muss die Ausgabe bis zur Strichstärke übereinstimmen, definieren Sie Ihre lizenzierte Schrift mit LABELIXA_FONT, und die Engine verwendet sie für allen Text. Ist der Pfad falsch, fällt der Dienst nicht stillschweigend zurück — das Feld font.sorun und die Statusseite warnen Sie.

Statusprüfung

GET /health gibt den Komponentenstatus als JSON zurück; /durum ist eine menschenlesbare Statusseite. /health kann für Load-Balancer-Prüfungen verwendet werden.