Initial commit: aplicatie de cantarire si etichetare
Aplicatie Flask + SQLite pentru productie alimentara: cantarirea componentelor unui produs finit si tiparirea etichetei prin QZ Tray. - produse finite (retete) formate din componente cantarite - designer vizual de etichete (mm/px, zona sigura, campuri variabile, cod QR cu continut din mai multe bucati) - legare produs finit -> sablon de eticheta - navigare pe doua taburi: Cantarire / Setari - administrare: componente, produse finite, sabloane, campuri, istoric - backup, resetare baza de date, checklist de pregatire, /healthz - CLI de administrare si serviciu systemd pentru productie - vendor/syncpulse-scale-bridge (GPL-3.0-or-later) pentru citirea cantarului
This commit is contained in:
@@ -0,0 +1,29 @@
|
||||
[Unit]
|
||||
Description=Cantarire si etichetare (Flask/waitress)
|
||||
Documentation=file:///opt/cantarire-etichetare/README.md
|
||||
After=network-online.target
|
||||
Wants=network-online.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
User=cantarire
|
||||
Group=cantarire
|
||||
# Necesar pentru accesul la adaptorul USB-serial al cantarului (daca e cazul).
|
||||
SupplementaryGroups=dialout
|
||||
WorkingDirectory=/opt/cantarire-etichetare
|
||||
Environment=PYTHONUNBUFFERED=1
|
||||
EnvironmentFile=-/etc/cantarire.env
|
||||
ExecStart=/opt/cantarire-etichetare/.venv/bin/python run.py --production --port 5000
|
||||
Restart=on-failure
|
||||
RestartSec=3
|
||||
TimeoutStopSec=15
|
||||
|
||||
# Scriere doar in folderul de date si in /tmp.
|
||||
NoNewPrivileges=true
|
||||
PrivateTmp=true
|
||||
ProtectSystem=full
|
||||
ProtectHome=true
|
||||
ReadWritePaths=/var/lib/cantarire
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
Reference in New Issue
Block a user