Blog

DDEV
15/09/2021

Développement Web local avec DDEV sous Linux

DDEV enironnement développement web php. Tout ce qu'il faut savoir ! 

DDEV est un outil open source qui simplifie la mise en place d'environnement de développement PHP en local et en quelques minutes. Il est puissant et flexible, grâce à ses configurations d'environnement par projet, qui peuvent être étendues, contrôlées par version et partagées. En bref, DDEV vise à permettre aux équipes de développement d'utiliser Docker dans leur flux de travail sans les complexités d'une configuration sur mesure.

Configuration requise :

  1. Docker version 18.06 ou supérieure. Les utilisateurs Linux s'assurent de mettre à niveau docker-compose et de suivre les étapes de post-installation
  2. Prise en charge du système d'exploitation

La plupart des distributions Linux qui peuvent exécuter Docker-ce fonctionnent bien. Cela inclut au moins Ubuntu 16.04+, Debian Jessie +, Fedora 25+

Utilisation de DDEV avec d'autres environnements de développement :


DDEV utilise par défaut les ports 80 et 443 sur votre système, lorsque les projets sont en cours d'exécution. Si vous utilisez un autre environnement de développement local, vous pouvez soit arrêter l'autre environnement, soit configurer DDEV pour utiliser différents ports.

Installation et configuration  DDEV :

Découvrez nos étapes, pour l’installation de DDEV sur votre machine locale en fournissant des instructions pour Linux.

  1. Téléchargez le script 

curl -L https://raw.githubusercontent.com/drud/ddev/master/scripts/install_ddev.sh | bash 

2. Utilisez la commande ddev config pour créer une structure de répertoire spécifique aux plateformes CMS utilisées

3. Utilisez la commande ddev start pour réinitialiser votre plate-forme

Cela permettra de construire tous les conteneurs basés sur Docker pour votre projet, qui comprennent un conteneur web, un conteneur de base de données et phpmyadmin. Une fois l'initialisation est terminée, vous verrez un résultat comme sur l’image ci-dessous (votre numéro de port peut être différent).
DDEV stop  arrêtent les conteneurs qui composent un projet.
DDEV restart ne fait qu'un arrêt et un démarrage. 
DDEV poweroff arrête tous les conteneurs et projets liés à ddev.

4. SSH dans les conteneurs

La commande ddev ssh ouvrira une session interactive bash ou sh shell dans le conteneur pour un service ddev. 
Le service Web est connecté par défaut. 
La session peut être terminée en tapant exit. 
Afin de vous connecter à un autre service, utilisez l'indicateur --service pour spécifier le service auquel vous souhaitez vous connecter. Par exemple, pour vous connecter au conteneur de base de données, vous exécutez ddev ssh --service db. Pour spécifier le répertoire de destination, utilisez l'indicateur --dir. Par exemple, pour vous connecter au conteneur de base de données et être placé dans le répertoire / home, vous devez exécuter  ddev ssh --service db --dir / home.

Si vous souhaitez utiliser vos clés ssh personnelles dans le conteneur Web, utilisez la commande ddev auth ssh pour ajouter les clés de votre répertoire ~ / .ssh et fournir par la suite une phrase de passe, puis ces clés seront utilisables à partir du conteneur Web.


5. Pour l’importation et l’exportation de base de données :

les commandes ddev import-db et ddev export-db permettent d'importer ou d'exporter un fichier sql ou sql compressé.

6. Les commandes utilisées  DDEV-Local :

Tapez ddev ou ddev -h dans une fenêtre de terminal pour voir les commandes ddev disponibles. Il existe des commandes pour configurer un projet, démarrer, arrêter, décrire, etc. 
Pour vous aider,  Chaque commande a des informations à afficher en ajoutant -h. Par exemple, ddev stop -h montre que ddev rm est un alias, et montre tous les nombreux indicateurs qui peuvent être utilisés avec ddev stop.

Conclusion
DDEV-Local tente de faire fonctionner l'utilisation hors ligne aussi bien que possible, et vous ne devriez vraiment rien faire pour que cela marche :

  • Pas d'instrumentation ou de mise à jour des rapports s'il est hors ligne
  • Utilise les entrées / etc / hosts au lieu de la résolution DNS, dans le cas ou la résolution DNS échoue