Cette branche est dédiée à la mise en place des applications libertempo sous PHP 7.1. Pour d'autres versions, consultez les autres branches.
Ce readme n'a pas pour objectif de vous apprendre ce qu'est docker, la doc officielle le fait bien mieux.
Par contre, il va vous permettre, en moins de 10 minutes (lecture comprise, no joke), d'avoir une instance de libertempo dockerisée. Il faut pour cela quelques prérequis :
- Docker et docker-compose installés sur votre poste
- Source de Libertempo sur votre poste
- Source de ce repo sur votre poste
- Dans certains cas
apparmor
etcgroup-lite
(voir ticket)
Vous avez tout cela, alors c'est parti !
La première des étapes est d'associer une IP à votre application dans le fichier hosts :
# /etc/hosts
localhost libertempo
Ensuite, vous devez préparer les sources pour créer un docker qui vous soit propre. Nous allons donc dire à docker de faire pointer les sources du site « Libertempo » en dehors de docker (comme un lien symbolique en somme). La véritable localisation des sources de Libertempo se trouvera sur votre poste, de telle sorte que vous puissiez travailler sans avoir à entrer dans docker en permanence.
Pour cela, modifiez le fichier .env.dist
. Vous devez ici exécuter la commande id
pour l'utilisateur de votre choix et mettre les valeurs retournées à la place. Puis, changez les patchs web et api.
Une fois ceci fait, nous pouvons créer l'image de l'application Libertempo dockerisée. Exécutez donc le fichier d'installation :
make set-env
make build
c'est lui qui va initialiser tout le serveur avec ses dépendances.
Il s'agit d'une installation d'un système unix somme toute normale (les lignes ne devraient pas vous surprendre), basée sur les ordres fournis par le fichier Dockerfile
, un équivalent d'un makefile
.
NOTE: Si le build échoue à cause d'une résolution DNS, pensez à adapter la règle 'FORWARD' de votre pare-feu.
Enfin, la dernière étape :
make install
(Le serveur MySQL est un peu capricieux à démarrer. Si l'opération échoue, recommencez)
Tadaaa ! Une application libertempo pleinement opérationnelle. Vous pouvez vous en assurer en vous rendant sur http://libertempo/
.
Une fois l'application installée, son cycle de vie normal se résume en
make start
et
make stop
Bien que non nécessaire à la vie de l'application, vous pourriez vouloir entrer dans le système dockerisé. Pour ce faire, saisissez :
make attach
Pour sortir du système dockerisé, faites Ctrl-P Ctrl-Q
et vous voilà dehors. Tout simplement. Docker est toujours lancé, vérifiez votre navigateur, mais vous êtes à présent détaché.
LDAP tourne automatiquement sur le docker et l'utilisateur admin:admin
seulement peut se connecter au serveur. Les utilisateurs disponibles dans le serveur sont listés dans le fichier dédié.
Au besoin, pour lister les utilisateurs, faites :
ldapsearch -x -w admin -D cn=admin,dc=libertempo -b "ou=People,dc=libertempo"