@@ -4,151 +4,9 @@ Introduction
4
4
Ce guide d'introduction est écrit en français, mais ne vous y habituez pas trop,
5
5
les sujets de TPs sont écrits en anglais.
6
6
7
- * [ La Machine Virtuelle] ( #la-machine-virtuelle )
8
- * [ Installation] ( #installation )
9
- * [ Démarrage] ( #d%C3%A9marrage )
10
- * [ Arrêt] ( #arr%C3%AAt )
11
- * [ Accès SSH] ( #acc%C3%A8s-ssh )
12
- * [ Dossiers Partagés] ( #dossiers-partag%C3%A9s )
13
- * [ Problèmes Rencontrés] ( #probl%C3%A8mes-rencontr%C3%A9s )
14
7
* [ Guide de survie avec Git] ( #guide-de-survie-avec-git )
15
8
* [ Guide de survie avec ` vi ` ] ( #guide-de-survie-avec-vi )
16
9
17
-
18
- Vous allez utiliser une ** machine virtuelle** préconfigurée avec
19
- [ Puppet] ( http://puppetlabs.com/ ) . On parle également de "VM" pour désigner ce
20
- type de machine, acronyme de l'anglais ** V** irtual ** M** achine.
21
-
22
- Cette machine inclut tout le necessaire pour faire fonctionner vos TPs et
23
- comporte les programmes suivants :
24
-
25
- * PHP 5.5
26
- * Apache2
27
- * MySQL
28
- * Git
29
- * et divers outils
30
-
31
-
32
- La Machine Virtuelle
33
- --------------------
34
-
35
- Tous les TPs se dérouleront dans une machine virtuelle _ headless_ , c'est-à-dire
36
- sans interface graphique.
37
- Cette machine est pilotée par [ Vagrant] ( http://www.vagrantup.com ) , un programme
38
- en Ruby qui abstrait la configuration et la manipulation de la machine.
39
-
40
- Tout se passe comme si la machine virtuelle était un serveur accessible
41
- uniquement en réseau, via un tunnel ` ssh ` .
42
-
43
- Votre machine redirige toutes les connexions entrantes sur le port ` 8080 ` vers
44
- le port ` 80 ` de la machine virtuelle comme le montre la figure ci-dessous :
45
-
46
- ![ schema réseau de l'installation] ( ../images/vm-network.png )
47
-
48
- De la même manière, les ports ` 8081 ` et ` 8082 ` redirigent respectivement vers
49
- les ports ` 81 ` et ` 82 ` de la machine virtuelle.
50
-
51
-
52
- ### Installation
53
-
54
- Vous allez installer la configuration de Vagrant dans le répertoire
55
- ` /home/disques/$USER/php-vm ` .
56
-
57
- Dans la suite du document, nous utiliserons ` DOCROOT ` pour parler de ce chemin.
58
-
59
- Vous êtes invité à définir une variable d'environnement :
60
-
61
- $ export DOCROOT="/home/disques/$USER/php-vm"
62
-
63
- Vous pouvez ajouter cette ligne à votre fichier ` .bashrc ` .
64
-
65
- Maintenant, récupérez la configuration de la machine virtuelle :
66
-
67
- $ git clone git://github.com/willdurand-edu/php-vm.git $DOCROOT
68
- $ cd $DOCROOT
69
-
70
- En listant le répertoire, vous devez avoir une sortie similaire à celle-ci :
71
-
72
- DOCROOT $ ls -la
73
-
74
- total 32
75
- drwxr-xr-x 12 william staff 408B 6 jan 15:41 ./
76
- drwxr-xr-x 9 william staff 306B 4 jan 16:17 ../
77
- drwxr-xr-x 16 william staff 544B 6 jan 09:35 .git/
78
- -rw-r--r-- 1 william staff 20B 4 jan 14:55 .gitignore
79
- -rw-r--r-- 1 william staff 111B 1 jan 19:18 hiera.yaml
80
- drwxr-xr-x 7 william staff 238B 6 jan 15:49 projects/
81
- drwxr-xr-x 5 william staff 170B 1 jan 19:18 puphpet/
82
- -rw-r--r-- 1 william staff 2,1K 4 jan 16:11 README.md
83
- -rw-r--r-- 1 william staff 1,7K 6 jan 02:01 Vagrantfile
84
-
85
- La configuration est située dans le fichier ` Vagrantfile ` et la recette
86
- d'installation du serveur est située dans le dossier ` puphpet/ ` .
87
-
88
- Pour terminer l'installation de la machine virtuelle, lancer la commande
89
- suivante :
90
-
91
- $ vagrant up
92
-
93
- Ouvrir un navigateur, et aller à l'adresse
94
- [ http://localhost:8080/ ] ( http://localhost:8080/ ) pour vérifier que tout
95
- fonctionne correctement.
96
-
97
- ### Démarrage
98
-
99
- $ vagrant up
100
-
101
- Oui, c'est bien la même commande que pour installer la machine virtuelle. En
102
- fait, cette commande est toujours celle qui permet d'utiliser la VM, qu'elle
103
- soit déjà installée ou non. Il est inutile d'avoir deux commandes pour obtenir
104
- le même résultat, ce que l'on veut au bout du compte, c'est pouvoir utiliser la
105
- VM.
106
-
107
- ### Arrêt
108
-
109
- $ vagrant halt
110
-
111
- ** Note :** Merci de bien éteindre la machine virtuelle à la fin de la séance.
112
-
113
- ### Accès SSH
114
-
115
- $ vagrant ssh
116
-
117
- Une fois dans la machine virtuelle, vous pouvez prendre les droits ` root ` via
118
- ` sudo ` , mais est-ce bien utile ? :-)
119
-
120
- ### Dossiers Partagés
121
-
122
- Des dossiers sont partagés entre votre machine et la machine virtuelle. Vous
123
- trouverez le détail complet ici :
124
- [ https://github.com/willdurand-edu/php-vm#filesystem-mapping ] ( https://github.com/willdurand-edu/php-vm#filesystem-mapping ) .
125
-
126
- Tous les fichiers que vous éditez dans ce répertoire seront également modifiés
127
- dans la machine virtuelle.
128
-
129
- ### Problèmes Rencontrés
130
-
131
- ##### Unable To Connect To Github.com
132
-
133
- Vous obtenez le message suivant lors du ` git clone ` :
134
-
135
- fatal: unable to connect to github.com:
136
- github.com[0: 207.97.227.239]: errno=Connexion terminée par expiration du délai d'attente
137
-
138
- Vous avez probablement un proxy (Auversup?) qui empêche d'atteindre GitHub de
139
- manière classique. Remplacez ` git:// ` par ` https:// ` dans l'URL du dépôt :
140
-
141
- $ git clone https://github.com/willdurand-edu/php-vm.git
142
-
143
- ##### No Input File Specified
144
-
145
- Vous obtenez l'erreur ** No input file specified** , c'est probablement un problème
146
- de permissions sur vos fichiers. Pour corriger, se placer dans le dossier de
147
- votre projet sur la machine virtuelle et exécuter les deux commandes suivantes :
148
-
149
- $ find * -type f -exec chmod 644 "{}" ";"
150
- $ find * -type d -exec chmod 755 "{}" ";"
151
-
152
10
Guide de survie avec Git
153
11
------------------------
154
12
0 commit comments