Cloner un projet Symfony
Guide complet pour cloner et lancer un projet Symfony depuis GitHub
Prérequis
Avant de commencer, assurez-vous d'avoir installé :
- Git
- PHP 8.1 ou supérieur
- Composer
- Symfony CLI (optionnel mais recommandé)
1. Cloner le projet
Clonez le repository GitHub sur votre machine locale :
git clone https://github.com/username/project-name.git
cd project-name2. Installer les dépendances
Installez toutes les dépendances PHP du projet avec Composer :
composer install3. Configuration de l'environnement
Créez le fichier .env.local à partir du fichier .env :
cp .env .env.localModifiez le fichier .env.local pour configurer :
- Base de données :
DATABASE_URL - Variables d'environnement : APP_ENV, APP_SECRET, etc.
Exemple :
DATABASE_URL="mysql://user:password@127.0.0.1:3306/db_name?serverVersion=8.0"
APP_ENV=dev
APP_SECRET=your_secret_key4. Créer la base de données
Créez la base de données :
php bin/console doctrine:database:createExécutez les migrations pour créer les tables :
php bin/console doctrine:migrations:migrate5. Charger les fixtures (optionnel)
Si le projet contient des fixtures pour les données de test :
php bin/console doctrine:fixtures:load6. Installer les assets (si nécessaire)
Si le projet utilise Webpack Encore pour les assets :
npm install
npm run devOu pour la production :
npm run build7. Lancer le serveur
Avec Symfony CLI (recommandé)
symfony server:startLe projet sera accessible sur : https://127.0.0.1:8000
Avec le serveur PHP intégré
php -S localhost:8000 -t public/Le projet sera accessible sur : http://localhost:8000
Problèmes courants
Erreur de permissions
Si vous rencontrez des erreurs de permissions sur les dossiers var/ :
chmod -R 777 var/Cache
Pour vider le cache :
php bin/console cache:clearExtensions PHP manquantes
Vérifiez les extensions requises dans composer.json et installez-les si nécessaire.
Commandes utiles
- Vérifier les requirements :
symfony check:requirements - Lister les routes :
php bin/console debug:router - Vérifier la configuration :
php bin/console debug:config