« Symfony Docker » : différence entre les versions

Ligne 68 : Ligne 68 :
=== '''3. Cas particulier : Développement d’un bundle local''' ===
=== '''3. Cas particulier : Développement d’un bundle local''' ===


Si vous développez un bundle en local et qu’il est lié via <code>composer.json</code> en <code>&quot;type&quot;: &quot;path&quot;</code>, assurez-vous que : 1. '''Le chemin est correct''' dans <code>composer.json</code> : <code>json    {       &quot;require&quot;: {           &quot;mon/bundle-local&quot;: &quot;*&quot;,           &quot;symfony/framework-bundle&quot;: &quot;^6.0&quot;        },        &quot;repositories&quot;: [           {               &quot;type&quot;: &quot;path&quot;,               &quot;url&quot;: &quot;./packages/mon-bundle-local&quot;            }       ]   }</code> 2. '''Le volume est bien monté''' dans <code>docker-compose.yml</code> : <code>yaml    volumes:      - ./:/var/www/html      - ./packages/mon-bundle-local:/var/www/html/packages/mon-bundle-local  # Si le bundle est dans un sous-dossier</code> 3. '''Reconstruire l’autoload''' après modification du bundle : <code>bash    docker-compose exec app composer dump-autoload</code>
Si vous développez un bundle en local et qu’il est lié via <code>composer.json</code> en <code>"type": "path"</code>, assurez-vous que :<br />
1. '''Le chemin est correct''' dans <code>composer.json</code> :  
<syntaxhighlight lang="json">{      
    "require": {  
        "mon/bundle-local": "*",  
        "symfony/framework-bundle": "^6.0"
    },         
    "repositories": [
        {
            "type": "path",
            "url": "./packages/mon-bundle-local"
        }
    ]
}
</syntaxhighlight>


2. '''Le volume est bien monté''' dans <code>docker-compose.yml</code> :
<syntaxhighlight lang="yaml"> 
volumes:
- ./:/var/www/html
- ./packages/mon-bundle-local:/var/www/html/packages/mon-bundle-local
# Si le bundle est dans un sous-dossier
</syntaxhighlight>


-----
3. '''Reconstruire l’autoload''' après modification du bundle :
<syntaxhighlight lang="bash" copy>bash docker-compose exec app composer dump-autoload</syntaxhighlight>


=== '''4. Optimisation pour le dev : Xdebug + volumes''' ===
=== '''4. Optimisation pour le dev : Xdebug + volumes''' ===