Si vous disposez d’un NAS Synology sous DSM6 et que vous souhaitez utiliser Composer pour créer des projets PHP, cet article peut vous aider !
Prérequis
En prérequis, je considère comme acquis les points suivants :
- Votre accès SSH est opérationnel,
- Web Station est activée,
- Vous avez installé PHP 5.6 et/ou PHP 7 sur votre NAS,
- L’extension « phar » est active au moins dans la configuration PHP de la version avec laquelle vous souhaitez utiliser Composer.
Installation de Composer
La première chose à savoir – je suis tombé dans le panneau et c’est la raison de ce billet – c’est que votre NAS est équipé d’une version de PHP dédiée à l’exécution du DSM. Cette version n’est pas utilisée par Web Station. C’est-à-dire qu’en tapant php
en ligne de commande, c’est le PHP interne qui se lance et qui est limité au niveau de ses extensions (je me suis retrouvé confronté à l’absence de « tokenizer » en souhaitant installer un logiciel). Les autres versions de PHP sont accessibles depuis les commandes php56
et/ou php70
; qui sont installées dans /usr/local/bin
.
Je vous propose donc d’installer Composer
globalement au serveur dans le même répertoire que les différentes versions PHP installées ; parce que taper du php56 composer.phar
, ça va deux secondes…
Commençez donc par ouvrir votre accès SSH (le « $ » n’est pas à taper, il représente les extraits correspondants à de la ligne de commande) :
$ ssh yourname@ip
Accédez au compte root :
$ sudo -i
Déplacez-vous dans le répertoire où nous installerons Composer
:
$ cd /usr/local/bin
Installez Composer
:
$ curl -s http://getcomposer.org/installer | php56 All settings correct for using Composer Downloading... Composer (version 1.3.1) successfully installed to: /usr/local/bin/composer.phar Use it: php composer.phar
Comme composer.phar
utilise par défaut la commande php
nous devons créer une commande qui permet d’outrepasser ce comportement. Créons donc ce script :
$ vi composer
Enregistrez le contenu suivant (tapez « i » pour passer en modification de contenu) :
!/bin/bash php56 /usr/local/bin/composer.phar $*
Tapez Echap
pour quitter le mode modification puis :wq
pour enregistrer et fermer le fichier.
Rendez le script exécutable :
$ chmod +X composer
Quittez le mode root :
$ exit
Testez pour finir que la commande fonctionne correctement :
$ composer --version Composer version 1.3.1 2017-01-07 18:08:51
Si la version s’affiche correctement, c’est tout bon !