- Vous avez un windows en version récente (min 2004), cela ira. Bien que je vous conseille d'installer linux.
- Avoir au moins la version 2004 de windows
- Installer dans les fonctionnsalités windows
- Plateforme d'ordinateur virtuel
- Sous-système Windows pour Linux
- Installer WSL2 via https://aka.ms/wsl2kernel
- Passer toutes les nouvelles installations en wsl2
# dans un powershell
wsl --set-default-version 2
- Installer la distribution debian via le store
- Lancer debian et installer git vim et make
sudo apt update
sudo apt upgrade
sudo apt install git vim make
- Modifier la config de docker dans debian (~/.docker/config.json)
# credsSTore doit être vide
credsStore:""
...
-
Avoir Docker Desktop
-
Dans Docker-Desktop, activer dans les paramètres l'integration de wsl pour debian. Cela permettra d'avoir les commandes docker dans debian
-
Avoir Phpstorm. Votre statut d'étudiant vous donne droit à une licence gratuite de la suite.
-
Installer les plugins symfony, wordpress et .env pour Phpstorm
-
Placez vous dans la machine debian
-
Dupliquer le projet :
git clone https://github.com/jeanlrnt/docker-symfony-wp-laravel.git devPhp # on se place dans le bon dossier cd devPhp
-
Construire et exécuter les conteneurs (Cela peut prendre un peu de temps)
$ make build $ make up
-
Installer Symfony
-
Toujours sous debian, on installe symfony en version minimale grâce au Makefile.
$ make newSF nom_de_mon_projet
- cela va créer le projet via composer, un virtualhost ainsi qu'une base de données dédiée
-
On installe les composants nécessaires à nos applications également avec Composer
$ make bash $ cd nom_de_mon_projet $ composer require --dev profiler maker $ composer require annotations twig orm form validator
-
Sous windows avec votre editeur de texte favori
- Modifiez le fichier C:\Windows\System32\drivers\etc\hosts en ajoutant à la dernière ligne :
127.0.01 nom_de_mon_projet.localhost
- Modifiez le fichier C:\Windows\System32\drivers\etc\hosts en ajoutant à la dernière ligne :
-
Sous windows, ouvrir le dossier symfony du projet dans phpStorm. Il va reconnaître automatiquement le WSL et le termnianl sera par défaut sous debian ;)
-
-
Installer Laravel
-
Toujours sous debian, on installe laravel en version minimale grâce au Makefile.
$ make newLR nom_de_mon_projet
- cela va créer le projet via composer, un virtualhost ainsi qu'une base de données dédiée
-
On installe les composants nécessaires à nos applications également avec Composer
$ make bash $ cd nom_de_mon_projet $ composer update
-
Sous windows avec votre editeur de texte favori
- Modifiez le fichier C:\Windows\System32\drivers\etc\hosts en ajoutant à la dernière ligne :
127.0.01 nom_de_mon_projet.localhost
- Modifiez le fichier C:\Windows\System32\drivers\etc\hosts en ajoutant à la dernière ligne :
-
Sous windows, ouvrir le dossier laravel du projet dans phpStorm. Il va reconnaître automatiquement le WSL et le termnianl sera par défaut sous debian ;)
-
-
Installer Wordpress
-
Toujours sous debian, on installe wordpress grâce au Makefile.
$ make newWP nom_de_mon_projet
- cela va créer le projet via composer, un virtualhost ainsi qu'une base de données dédiée
-
Sous windows avec votre editeur de texte favori
- Modifiez le fichier C:\Windows\System32\drivers\etc\hosts en ajoutant à la dernière ligne :
127.0.01 nom_de_mon_projet.localhost
- Modifiez le fichier C:\Windows\System32\drivers\etc\hosts en ajoutant à la dernière ligne :
-
Sous windows, ouvrir le dossier wordpress du projet dans phpStorm. Il va reconnaître automatiquement le WSL et le termnianl sera par défaut sous debian ;)
- modifier .env
- en recopiant les informations de https://roots.io/salts.html dans la partie concernée (AUTH_KEY, SECURE_AUTH_KEY, ...)
- en précisant le suffixe des tables : décommentez la variable DB_PREFIX et mettez le préfixe de votre choix.
- modifier .env
-
-
C'est parti :-)
Vous avez juste à exécuter make up
, puis:
- Ouvrez votre projet avec phpStorm
- Ouvrez votre navigateur nom_de_mon_projet.localhost:8000
- Logs du serveur web : logs/apache2
Vous avez juste à exécuter make down
.
Vous pouvez aller regarder le fichier docker-compose.yml
, avec les images docker-compose
correspondantes:
db
: le container mariadb 10.4,php
: php-fpm en version 8.0,apache
: le serveur web apache2 sur le port 8000,
# On rentre dans un conteneur en bash
$ make bash
# Commandes symfony
$ make bash
$ cd nom_de_mon_projet
$ sf make:controller
$ sf make:entity
$ composer req composant_utile
...
# Supprimer tous les conteneurs (en cas de gros plantage, à utiliser en dernier recours)
$ make cleanAll
-
Je ne comprends rien, que faire ? Allez voir votre prof !
-
Xdebug? Xdebug est déjà configuré Il faut ajouter le module Xdebug helper pour Firefox ou pour Chrome Il faut également configurer Phpstorm en se connectant au port
9001
avec l'idPHPSTORM
. Vous pouvez suivre ce lien. Le dépôt que vous utilisez est déjà paramétré. Utilisez docker-compose à la place de docker dans le "Remote" de l'interpréteur PHP.