3 uWSGI
Darks edited this page 1 year ago

uWSGI

Configuration

Les fichiers de configuration sont /etc/uwsgi/pc.ini pour la prod et /etc/uwsgi/pc-dev.ini pour la dev. Les sockets doivent pointer vers /run/uwsgi.<nom>/socket, avec l'utilisateur et le groupe correspondant à <nom>, et les droits en 770 (le groupe est important pour que l'utilisateur http (Nginx) puisse y accéder).

Exemple pour la prod :

[uwsgi]
uid = pc
gid = pc
socket = /run/uwsgi.pc/socket
chmod-socket = 770
manage-script-name = true
mount = /=app:app
master = true
plugins = python

SystemD

Le service de base fourni par le paquet uwsgi ne correspond pas à nos besoins. Il faut donc le modifier ainsi :

systemctl edit --full uwsgi@.service
[Unit]
Description=uWSGI service unit
After=syslog.target

[Service]
ExecStart=/usr/bin/uwsgi --ini /etc/uwsgi/%i.ini
ExecReload=/bin/kill -HUP $MAINPID
ExecStop=/bin/kill -INT $MAINPID
Restart=always
Type=notify
StandardError=syslog
NotifyAccess=all
KillSignal=SIGQUIT
WorkingDirectory=/home/%i/www/

[Install]
WantedBy=multi-user.target

VPS

Sur le VPS, les services sont nommés respectivement uwsgi@pc et uwsgi@pc-dev