mirror of
				https://gitlab.crans.org/mediatek/med.git
				synced 2025-11-04 09:42:11 +01:00 
			
		
		
		
	Fix entrypoint
This commit is contained in:
		
							
								
								
									
										13
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										13
									
								
								README.md
									
									
									
									
									
								
							@@ -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,
 | 
			
		||||
 
 | 
			
		||||
@@ -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
 | 
			
		||||
		Reference in New Issue
	
	Block a user