DDEV is an open source tool that allows setting up local sites using docker, quickly. You don’t need to know complex concepts about docker to be able to have your local WorpPress or Drupal sites working. You can check their official documentation here https://ddev.com/get-started/ and here https://ddev.readthedocs.io/en/stable/
The steps/commands listed below are the ones that I have needed the most, so I am moving this note to the web as a reference for myself, in the future, or to help others who may needed.
- Install homebrew, following the steps at: https://brew.sh/
- Install ddev (MAC):
brew install drud/ddev/ddev
- You need to run ddev config once per project to set it up, and it will ask you three questions:
- What’s site name?
- What’s the location of the docroot?
- What type of project is it? Such as Drupal, PHP, WordPress, etc.
- You need to run
ddev startto have the project up and running. You can run the command from outside of the folder if you remember the project name.
- Want to import a database? You can run
ddev import-db –src=dumpfile.sql.gzfrom the project directory. It will drop the database for you before importing the new database backup.
- What about if you need to run composer, drush or wp-cli commands? You should run
- Are you having an error and need to see the logs? You should run:
ddev logs -f
- I have needed to run this command before I was able to run drush on some of my Drupal projects:
ddev composer require drush/drush
- Need to get the URL of the sites, the port or check if the services are active?
ddev describewill give you that info.
- If you need to have your local sites using with https, you should run:
- Need to debug PHP code with xdebug? You will need to run ddev xdebug to enable it.
ddev xdebug offwill turn it off again.
- You are on mac, and your local sites are super slow, you should run
ddev config global –mutagen-enabledand it will enabled mutagen globally. You will notice the difference immediately.
- If you followed the step 12, and need to update a lot of files (maybe updating plugins or modules?), mutagen may be slow to pick the updated files, so you may need to run
ddev mutagen syncto accelerate the sync process.
- Need to test your site with a different PHP version, so you can use
ddev config –php-version 8.08.0 can be any PHP version that you need.
What is your favorite way to setup local sites?