5 webserver_type: apache-fpm
7 router_https_port: "443"
9 additional_hostnames: []
14 nfs_mount_enabled: false
15 mutagen_enabled: false
16 use_dns_when_possible: true
20 webimage_extra_packages: [php7.3-gmp]
22 # Key features of ddev's config.yaml:
24 # name: <projectname> # Name of the project, automatically provides
25 # http://projectname.ddev.site and https://projectname.ddev.site
27 # type: <projecttype> # drupal6/7/8, backdrop, typo3, wordpress, php
29 # docroot: <relative_path> # Relative path to the directory containing index.php.
31 # php_version: "7.4" # PHP version to use, "5.6", "7.0", "7.1", "7.2", "7.3", "7.4", "8.0", "8.1", "8.2"
33 # You can explicitly specify the webimage but this
34 # is not recommended, as the images are often closely tied to ddev's' behavior,
35 # so this can break upgrades.
37 # webimage: <docker_image> # nginx/php docker image.
40 # type: <dbtype> # mysql, mariadb
41 # version: <version> # database version, like "10.3" or "8.0"
42 # Note that mariadb_version or mysql_version from v1.18 and earlier
43 # will automatically be converted to this notation with just a "ddev config --auto"
45 # router_http_port: <port> # Port to be used for http (defaults to port 80)
46 # router_https_port: <port> # Port for https (defaults to 443)
48 # xdebug_enabled: false # Set to true to enable xdebug and "ddev start" or "ddev restart"
49 # Note that for most people the commands
50 # "ddev xdebug" to enable xdebug and "ddev xdebug off" to disable it work better,
51 # as leaving xdebug enabled all the time is a big performance hit.
53 # xhprof_enabled: false # Set to true to enable xhprof and "ddev start" or "ddev restart"
54 # Note that for most people the commands
55 # "ddev xhprof" to enable xhprof and "ddev xhprof off" to disable it work better,
56 # as leaving xhprof enabled all the time is a big performance hit.
58 # webserver_type: nginx-fpm # or apache-fpm
60 # timezone: Europe/Berlin
61 # This is the timezone used in the containers and by PHP;
62 # it can be set to any valid timezone,
63 # see https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
64 # For example Europe/Dublin or MST7MDT
66 # composer_root: <relative_path>
67 # Relative path to the composer root directory from the project root. This is
68 # the directory which contains the composer.json and where all Composer related
69 # commands are executed.
71 # composer_version: "2"
72 # You can set it to "" or "2" (default) for Composer v2 or "1" for Composer v1
73 # to use the latest major version available at the time your container is built.
74 # It is also possible to use each other Composer version channel. This includes:
75 # - 2.2 (latest Composer LTS version)
79 # Alternatively, an explicit Composer version may be specified, for example "2.2.18".
80 # To reinstall Composer after the image was built, run "ddev debug refresh".
82 # nodejs_version: "16"
83 # change from the default system Node.js version to another supported version, like 12, 14, 17, 18.
84 # Note that you can use 'ddev nvm' or nvm inside the web container to provide nearly any
85 # Node.js version, including v6, etc.
87 # additional_hostnames:
90 # would provide http and https URLs for "somename.ddev.site"
91 # and "someothername.ddev.site".
96 # would provide http and https URLs for "example.com" and "sub1.example.com"
97 # Please take care with this because it can cause great confusion.
99 # upload_dir: custom/upload/dir
100 # would set the destination path for ddev import-files to <docroot>/custom/upload/dir
101 # When mutagen is enabled this path is bind-mounted so that all the files
102 # in the upload_dir don't have to be synced into mutagen
107 # would set the default working directory for the web and db services.
108 # These values specify the destination directory for ddev ssh and the
109 # directory in which commands passed into ddev exec are run.
111 # omit_containers: [db, dba, ddev-ssh-agent]
112 # Currently only these containers are supported. Some containers can also be
113 # omitted globally in the ~/.ddev/global_config.yaml. Note that if you omit
114 # the "db" container, several standard features of ddev that access the
115 # database container will be unusable. In the global configuration it is also
116 # possible to omit ddev-router, but not here.
118 # nfs_mount_enabled: false
119 # Great performance improvement but requires host configuration first.
120 # See https://ddev.readthedocs.io/en/latest/users/install/performance/#nfs
122 # mutagen_enabled: false
123 # Performance improvement using mutagen asynchronous updates.
124 # See https://ddev.readthedocs.io/en/latest/users/install/performance/#mutagen
126 # fail_on_hook_fail: False
127 # Decide whether 'ddev start' should be interrupted by a failing hook
129 # host_https_port: "59002"
130 # The host port binding for https can be explicitly specified. It is
131 # dynamic unless otherwise specified.
132 # This is not used by most people, most people use the *router* instead
133 # of the localhost port.
135 # host_webserver_port: "59001"
136 # The host port binding for the ddev-webserver can be explicitly specified. It is
137 # dynamic unless otherwise specified.
138 # This is not used by most people, most people use the *router* instead
139 # of the localhost port.
141 # host_db_port: "59002"
142 # The host port binding for the ddev-dbserver can be explicitly specified. It is dynamic
143 # unless explicitly specified.
145 # phpmyadmin_port: "8036"
146 # phpmyadmin_https_port: "8037"
147 # The PHPMyAdmin ports can be changed from the default 8036 and 8037
149 # host_phpmyadmin_port: "8036"
150 # The phpmyadmin (dba) port is not normally bound on the host at all, instead being routed
151 # through ddev-router, but it can be specified and bound.
153 # mailhog_port: "8025"
154 # mailhog_https_port: "8026"
155 # The MailHog ports can be changed from the default 8025 and 8026
157 # host_mailhog_port: "8025"
158 # The mailhog port is not normally bound on the host at all, instead being routed
159 # through ddev-router, but it can be bound directly to localhost if specified here.
161 # webimage_extra_packages: [php7.4-tidy, php-bcmath]
162 # Extra Debian packages that are needed in the webimage can be added here
164 # dbimage_extra_packages: [telnet,netcat]
165 # Extra Debian packages that are needed in the dbimage can be added here
167 # use_dns_when_possible: true
168 # If the host has internet access and the domain configured can
169 # successfully be looked up, DNS will be used for hostname resolution
170 # instead of editing /etc/hosts
173 # project_tld: ddev.site
174 # The top-level domain used for project URLs
175 # The default "ddev.site" allows DNS lookup via a wildcard
176 # If you prefer you can change this to "ddev.local" to preserve
179 # ngrok_args: --basic-auth username:pass1234
180 # Provide extra flags to the "ngrok http" command, see
181 # https://ngrok.com/docs#http or run "ngrok http -h"
183 # disable_settings_management: false
184 # If true, ddev will not create CMS-specific settings files like
185 # Drupal's settings.php/settings.ddev.php or TYPO3's AdditionalConfiguration.php
186 # In this case the user must provide all such settings.
188 # You can inject environment variables into the web container with:
190 # - SOMEENV=somevalue
191 # - SOMEOTHERENV=someothervalue
193 # no_project_mount: false
194 # (Experimental) If true, ddev will not mount the project into the web container;
195 # the user is responsible for mounting it manually or via a script.
196 # This is to enable experimentation with alternate file mounting strategies.
197 # For advanced users only!
199 # bind_all_interfaces: false
200 # If true, host ports will be bound on all network interfaces,
201 # not just the localhost interface. This means that ports
202 # will be available on the local network if the host firewall
205 # default_container_timeout: 120
206 # The default time that ddev waits for all containers to become ready can be increased from
207 # the default 120. This helps in importing huge databases, for example.
209 #web_extra_exposed_ports:
211 # container_port: 3000
215 # container_port: 4000
218 # Allows a set of extra ports to be exposed via ddev-router
219 # The port behavior on the ddev-webserver must be arranged separately, for example
220 # using web_extra_daemons.
221 # For example, with a web app on port 3000 inside the container, this config would
222 # expose that web app on https://<project>.ddev.site:9999 and http://<project>.ddev.site:9998
223 # web_extra_exposed_ports:
224 # - container_port: 3000
230 # command: "/var/www/html/node_modules/.bin/http-server -p 3000"
231 # directory: /var/www/html
233 # command: "/var/www/html/node_modules/.bin/http-server /var/www/html/sub -p 3000"
234 # directory: /var/www/html
236 # override_config: false
237 # By default, config.*.yaml files are *merged* into the configuration
238 # But this means that some things can't be overridden
239 # For example, if you have 'nfs_mount_enabled: true'' you can't override it with a merge
240 # and you can't erase existing hooks or all environment variables.
241 # However, with "override_config: true" in a particular config.*.yaml file,
242 # 'nfs_mount_enabled: false' can override the existing values, and
246 # web_environment: []
248 # additional_hostnames: []
249 # can have their intended affect. 'override_config' affects only behavior of the
250 # config.*.yaml file it exists in.
252 # Many ddev commands can be extended to run tasks before or after the
253 # ddev command is executed, for example "post-start", "post-import-db",
254 # "pre-composer", "post-composer"
255 # See https://ddev.readthedocs.io/en/stable/users/extend/custom-commands/ for more
256 # information on the commands that can be extended and the tasks you can define