Commit 37008dcd authored by Sli's avatar Sli

Ajout de scripts de daemonisation, de firewall et mise à jour de la doc

parent dba7fccb
......@@ -91,4 +91,20 @@ Réception :
## Interface d'administration
Il est possible d'accéder à /admin pour obtenir une liste de toutes les validations effectuées et d'annuler le passage d'un billet.
\ No newline at end of file
Il est possible d'accéder à /admin pour obtenir une liste de toutes les validations effectuées et d'annuler le passage d'un billet.
# Installation du serveur sur une machine
Le serveur a été testé sur un raspberry pi 2 modèle B.
Le principe est de fabriquer un hotspot wifi avec le raspberry et de faire tourner le serveur de ebillet en arrière plan.
Pour daemoniser le serveur, il faut itiliser le script ebillet.service qui est à placer dans /etc/init.d, le modifier par rapport à la configuration réelle des fichiers et du nom d'utilisateur et d'activer le service au démarage de la machine
Il faut également créer la base de donnée en se positionnant dans Server et lancer createDB.sh
Il est possible d'avoir une configuration spécifique pour le serveur quisera ignorée par git en créant settings\_custom.py à côté de settings.py.
Enfin, il ne faut pas oublier d'installer les dépedances du logiciel qui sont python3.4 et le contenu de requirements.txt
Pour faire tourner le serveur sur le port 80 sans executer le serveur avec les droits de route, il est possible d'utiliser firewall.sh qui redirige le trafic du port 80 port 8080
keys.json
sqliteDB.db
app.apk
gala.apk
#!/bin/sh
### BEGIN INIT INFO
# Provides: myservice
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Put a short description of the service here
# Description: Put a long description of the service here
### END INIT INFO
# Change the next 3 lines to suit where you install your script and what you want to call it
DIR=/home/[user]/QR-code-reader/Server/src
DAEMON=$DIR/server.py
DAEMON_NAME=ebillet
# Add any command line options for your daemon here
DAEMON_OPTS=""
# This next line determines what user the script runs as.
# Root generally not recommended but necessary if you are using the Raspberry Pi GPIO from Python.
DAEMON_USER=[user]
# The process ID of the script when it runs is stored here:
PIDFILE=/var/run/$DAEMON_NAME.pid
. /lib/lsb/init-functions
# Redirects port 80 to 8080
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080
do_start () {
cd $DIR
log_daemon_msg "Starting system $DAEMON_NAME daemon"
start-stop-daemon --chdir $DIR --start --background --pidfile $PIDFILE --make-pidfile --user $DAEMON_USER --chuid $DAEMON_USER --startas $DAEMON -- $DAEMON_OPTS
log_end_msg $?
}
do_stop () {
log_daemon_msg "Stopping system $DAEMON_NAME daemon"
start-stop-daemon --stop --pidfile $PIDFILE --retry 10
log_end_msg $?
}
case "$1" in
start|stop)
do_${1}
;;
restart|reload|force-reload)
do_stop
do_start
;;
status)
status_of_proc "$DAEMON_NAME" "$DAEMON" && exit 0 || exit $?
;;
*)
echo "Usage: /etc/init.d/$DAEMON_NAME {start|stop|restart|status}"
exit 1
;;
esac
exit 0
#!/bin/sh
### BEGIN INIT INFO
# Provides: firewall
# Required-Start:
# Required-Stop:
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Firewall
# Description: Firewall for eticket app
### END INIT INFO
# Redirects port 80 to 8080
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment