Fix entrypoint

This commit is contained in:
Alexandre Iooss 2020-02-09 15:26:34 +01:00
parent 32dbf748a1
commit 3337c70a21
No known key found for this signature in database
GPG Key ID: 6C79278F3FCDCC02
2 changed files with 20 additions and 4 deletions

View File

@ -42,12 +42,25 @@ puis on va dire à Apache2 d'utiliser ce socket avec un `.htaccess`.
Pour cela on va imiter ce que fait l'image Docker,
```bash
git clone https://gitlab.crans.org/mediatek/med.git django-med
chmod go-rwx -R django-med
python3 -m venv venv
. venv/bin/activate
pip install -r requirements.txt
./entrypoint.sh
```
Pour lancer le serveur au démarrage de Zamok,
on ajoute dans la crontab de l'utilisateur club-med (`crontab -e`)
la ligne suivante :
```crontab
@reboot /home/club-med/django-med/entrypoint.sh
```
Il est néanmoins une mauvaise idée de faire de la production sur SQLite,
on configure donc ensuite Django et une base de données.
#### Configuration d'une base de données
Sur le serveur MySQL ou PostgreSQL, il est nécessaire de créer une base de donnée med,

View File

@ -11,16 +11,19 @@ sleep 2
python manage.py migrate
python manage.py collectstatic
# harakiri parameter respawns processes taking more than 20 seconds
# max-requests parameter respawns processes after serving 5000 requests
# vacuum parameter cleans up when stopped
uwsgi --chdir="$(pwd)" \
--module=med.wsgi:application \
--env DJANGO_SETTINGS_MODULE=med.settings \
--master \
--pidfile="$(pwd)/uwsgi.pid" \ # create a pidfile
--pidfile="$(pwd)/uwsgi.pid" \
--socket="$(pwd)/uwsgi.sock" \
--processes=5 \
--chmod-socket=600 \
--harakiri=20 \ # respawn processes taking more than 20 seconds
--max-requests=5000 \ # respawn processes after serving 5000 requests
--vacuum \ # clean up when stopped
--harakiri=20 \
--max-requests=5000 \
--vacuum \
--daemonize="$(pwd)/uwsgi.log" \
--protocol=fastcgi