[Unit] Description=Gunicorn instance to serve OSP Workers on port %i After=network.target ejabberd.service redis.service PartOf=osp.target {% if osp_db_type == "postgresql" %} After=postgresql.service {% endif %} {% if osp_db_type == "mysql" %} After=mysql.service {% endif %} [Service] User=http Group=http WorkingDirectory=/opt/osp Environment="VIRTUAL_ENV=/opt/osp-venv" Environment="PATH=/opt/osp-venv/bin:/usr/local/bin:/usr/bin:/bin" ExecStart=/opt/osp-venv/bin/gunicorn app:app -k geventwebsocket.gunicorn.workers.GeventWebSocketWorker -w {{ osp_worker_worker }} --bind 0.0.0.0:%i --timeout {{ osp_worker_timeout }} --reload --access-logfile /var/log/osp/access.log --error-logfile /var/log/osp/error.log Restart=on-failure RestartSec=5m [Install] WantedBy=multi-user.target