Récupération et construction du code
Le code de BlueMind est publié dans https://forge.bluemind.net/stash/projects/BM/repos/bluemind-public. Il s'agit d'une copie de notre base de code interne, organisée de la façon suivante :
- branche master : développement principal
- branches release/X.Y.Z : base pour la future version X.Y.Z-H (par exemple release/3.5.14 pour la 3.5.14-2)
- les dernières releases sont présentes sous forme de tag sur les branches de release
Pour récupérer et construire le code (ici pour la branche release/3.5.14) :
git clone --depth 1 --branch release/3.5.14 https://forge.bluemind.net/stash/scm/bm/bluemind-public.git cd bluemind-public mvn -P full clean install -Dmaven.test.skip=true
Tous les artifacts binaires BlueMind sont installés dans votre repository local maven.
Dépendances
Les paquets BlueMind dépendent de bm-cyrus et bm-nginx.
bm-cyrus
git clone https://forge.blue-mind.net/stash/scm/bm/bm-cyrus-imapd.git cd bm-cyrus-imapd ./ci/build_cyrus.sh
bm-nginx
git clone https://forge.blue-mind.net/stash/scm/bm/bm-nginx.git cd bm-nginx ./ci/build_nginx.sh
Environnement
Il ne suffit pas d'installer les paquets sur un serveur répondant aux pré-requis pour disposer d'une installation BlueMind fonctionnelle. Les étapes suivantes sont réalisées automatiquement par le paquet bm-installwizard inclus dans les installeurs.
Fichier de configuration bm.ini
Le fichier /etc/bm/bm.ini doit être créé avec le contenu suivant (à adapter selon votre configuration) :
[global] external-url = your-domain.com external-protocol = https host = <YOUR SERVER IP> dbtype = PGSQL db = bj user = bj password = "bj"
Base de données postgresql
Les instructions suivantes portent sur postgresql 9.4, à adapter selon votre version du SGBD.
Nous vous proposons une configuration que vous pouvez adapter à vos besoins, à déposer dans /etc/postgresql/9.4/main/ en remplacement des fichiers existants :
Le fichier postgresql.conf doit être édité afin de poisitionner la valeur de l'option max_connections : la valeur recommandée étant : <NB CORES> * 10 + 10
La base de données correspondant à la version buildée peut être récupérée à l'adresse suivante : http://pkg.blue-mind.net/db/
Les commandes suivantes utilisent l'exemple de la version 3.0.23, et doivent être adaptées selon votre configuration de postgresql :
sudo -u postgres psql create user bj with password 'bj'; create database bj; grant all privileges on database bj to bj; \q sudo -u postgres psql bj < 3.0.23.sql
Insérer en base les informations de l'hôte :
sudo -u postgres psql insert into host (host_domain_id, host_timeupdate, host_timecreate, host_name, host_ip) values (1, now(), now(), 'bluemind', '<ip_hote>'); insert into hosttag (tag_id, host_id) values ((SELECT id from systemtag where name='bm/core'), 1); \q
Redémarrer BlueMind :
bmctl restart
Pour finir, nous vous conseillons de positionner la valeur kernel.shmmax=300000 dans le fichier /etc/sysctl.conf.
Configuration de nginx
Les fichiers bm-webmail et bm-client-access (dossier /etc/nginx/sites-available) doivent être édités pour remplacer "${externalUrl}" par l'URL externe du serveur (telle que spécifiée également dans bm.ini), puis copiés ou liés dans /etc/nginx/sites-enabled.
Il suffit ensuite de redémarrer votre serveur pour profiter de votre nouvelle installation BlueMind !