Add systemd service file, move Gunicorn configuration to gunicorn.cfg

This commit is contained in:
Klaus-Uwe Mitterer 2017-10-18 12:40:01 +02:00
parent 3fdef90cf3
commit 77cba075f4
3 changed files with 26 additions and 6 deletions

5
gunicorn.cfg Normal file
View file

@ -0,0 +1,5 @@
import multiprocessing
name = "PyGPS"
bind = "127.0.0.1:6957"
workers = multiprocessing.cpu_count() * 4

20
pygps.service Normal file
View file

@ -0,0 +1,20 @@
[Unit]
Description = PyGPS
After = network.target
[Service]
PermissionsStartOnly = true
PIDFile = /run/pygps/pygps.pid
User = gps
Group = gps
WorkingDirectory = /opt/pygps
ExecStartPre = /bin/mkdir /run/pygps
ExecStartPre = /bin/chown -R gps:gps /run/pygps
ExecStart = /usr/bin/env gunicorn -c gunicorn.cfg --pid /run/pygps/pygps.pid main
ExecReload = /bin/kill -s HUP $MAINPID
ExecStop = /bin/kill -s TERM $MAINPID
ExecStopPost = /bin/rm -rf /run/pygps
PrivateTmp = true
[Install]
WantedBy = multi-user.target

7
run.sh
View file

@ -1,8 +1,3 @@
#!/bin/bash
ip="127.0.0.1"
port="6957"
workers=$((`getconf _NPROCESSORS_ONLN` * 4))
gunicorn -w $workers -b $ip:$port -n "GPS Endpoint" main
gunicorn -c gunicorn.cfg main