Dans cet article, nous allons installer
ODK Aggregate sur une base
Ubuntu server. ODK Aggregate, libre et open source, permet de réaliser, centraliser et gérer des saisies avec des formulaires remplis sur smartphone/tablette par des personnes sur le terrain grâce aux applications android ODK Collect ou GeoODK. ODK Aggregate est une solution fiable utilisée par exemple par de nombreux organismes non gouvernementaux liés à l'ONU.
Ce tuto part du principe que l'installation sera effectuée sur une installation fraiche d'Ubuntu server. Si vous suivez l'installation sur un matériel qui héberge déjà d'autres services, vous devrez éventuellement faire les modifications qui s'imposent...
1) Installer Ubuntu server en veillant à sélectionner au minimum les paquets pour un serveur OpenSSH, LAMP et la base de donnée PostgreSQL. Ajouter d'autres paquets à volonté en fonction de vos besoins. Éviter simplement d'installer le serveur tomcat car nous installerons manuellement la version 6 plus tard.
2) Se connecter en SSH à la machine et prendre les droits d'administration de root.
3) OPTIONNEL: désinstaller MySQL, personnellement je ne vais pas l'utiliser sur ce serveur. Les commandes suivantes le permettent:
service mysql stop
killall -KILL mysql mysqld_safe mysqld
apt-get --yes purge mysql-server mysql-client
apt-get --yes autoremove --purge
apt-get autoclean
deluser --remove-home mysql
delgroup mysql
rm -rf /etc/apparmor.d/abstractions/mysql /etc/apparmor.d/cache/usr.sbin.mysqld /etc/mysql /var/lib/mysql /var/log/mysql* /var/log/upstart/mysql.log* /var/run/mysqld
updatedb
4) OPTIONNEL: désinstaller le serveur Tomcat 7 si présent. ODK Aggregate ne tourne que sur Tomcat 6. Premièrement il faut identifier les paquets liés à Tomcat 7:
dpkg -l|grep tomcat
Puis il faut supprimer manuellement chaque paquet listé avec la commande précédente:
dpkg -P <nom du paquet à supprimer>
5) Installer Tomcat 6 grâce à la commande suivante:
apt-get install tomcat6
A ce stade il faut vérifier que le serveur fonctionne correctement. Il faut alors visiter l'adresse ip du serveur en sollicitant le port 8080:
http://<adresse ip du serveur>:8080
Vous devriez avoir un message qui spécifie que le serveur fonctionne.
6) Télécharger
ODK Aggregate, lancer et suivre le processus sur son propre ordinateur. Le processus n'installe rien sur l'ordinateur, il créé simplement un fichier "ODKAggregate.war" et un script "create_db_and_user.sql" qui mettra en place la base de donnée PostgreSQL. Ces deux fichiers doivent être placés sur le serveur, cela sera détaillé dans ce tuto.
7) Utiliser SCP pour transférer les deux fichiers créés à l'étape précédent sur le serveur. Pour ce faire, nous allons créer un dossier dans le dossier home et y placer les fichiers.
cd /home/<nom d'utilisateur>
mkdir odkagg
cd odkagg
scp -r <utilisateur>@<ip ordinateur>:<chemin vers le dossier de l'étape 6> .
8) Lancer le script de mise en place de la base de données. Si vous suivez ce tuto, vous êtes déjà dans le bon dossier, sinon cd dans le dossier contenant le fichier "create_db_and_user.sql". Si vous êtes toujours root, quittez ces privilèges en tappant "
exit".Puis il faut lancer ce script grâce à la suite de commandes suivantes:
sudo -i -u postgres
psql
\i create_db_and_user.sql
\q
exit
9) Copier le fichier "ODKAggregate.war" dans le dossier "webapps" de Tomcat 6:
cp ODKAggregate /var/lib/tomcat6/webapps
L'installation est terminée, il ne reste qu'à visiter http://
<ip du serveur>:8080/ODKAggregate et se logger avec le nom d'utilisateur créé à l'étape 6, mot de passe "aggregate" et changer le mot de passe. Bon terrain et bonne récolte de données!