Python-Skripte als systemd-user-service

11. Mar 2019

Development | Ops

Wer kennt das nicht, da hat man ein Python-Skript geschrieben, zum Beispiel einen kleinen Webserver in Flask, oder irgendein Test-Protokoll-Server mit Twisted. Diesen will man nun schnell auf einem Server oder Raspberry Pi starten, und ist durch unseren Post Systemctl Services unter Ubuntu auf den systemd-Geschmack gekommen. Das Python-Skript Folgendes schreibt man an den Anfang seines Python-Skripts. Wir nennen es hier jetzt mal main.py. #!/bin/sh -e "exec" "`dirname $0`/.env/bin/python" "$0" "$@" def start_server(): # ...

#Ubuntu #Service #systemctl #Python #systemd #user #venv #virtualenv

Systemctl Services unter Ubuntu

4. Dec 2018

Development | Ops

Um ein Executeable als Service einzurichten, musst du unter /etc/systemd/system/ eine neue Datei erzeugen. Sinnvollerweise nennst du sie nach deinem Executable. Wollen wir zum Beispiel einen Nginx Webserver als Service einrichten, wäre der Name nginx.service. [Unit] Description=Nginx Webserver [Service] Type=simple ExecStart=/usr/bin/nginx [Install] WantedBy=multi-user.target Jetzt musst du deinen neuen Service nur noch aktivieren. sudo systemctl enable nginx.service Anschließend kannst du ihn starten. sudo systemctl start nginx.service

#Ubuntu #Service #Systemctl