config.yaml 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299
  1. name: app
  2. type: php
  3. docroot: public
  4. php_version: "8.3"
  5. webserver_type: nginx-fpm
  6. xdebug_enabled: false
  7. additional_hostnames: []
  8. additional_fqdns: []
  9. database:
  10. type: mariadb
  11. version: "10.11"
  12. use_dns_when_possible: true
  13. composer_version: "2"
  14. web_environment: []
  15. corepack_enable: false
  16. # Key features of DDEV's config.yaml:
  17. # name: <projectname> # Name of the project, automatically provides
  18. # http://projectname.ddev.site and https://projectname.ddev.site
  19. # If the name is omitted, the project will take the name of the enclosing directory,
  20. # which is useful if you want to have a copy of the project side by side with this one.
  21. # type: <projecttype> # backdrop, cakephp, craftcms, drupal, drupal6, drupal7, drupal8, drupal9, drupal10, drupal11, generic, laravel, magento, magento2, php, shopware6, silverstripe, symfony, typo3, wordpress
  22. # See https://ddev.readthedocs.io/en/stable/users/quickstart/ for more
  23. # information on the different project types
  24. # docroot: <relative_path> # Relative path to the directory containing index.php.
  25. # php_version: "8.3" # PHP version to use, "5.6" through "8.4"
  26. # You can explicitly specify the webimage but this
  27. # is not recommended, as the images are often closely tied to DDEV's' behavior,
  28. # so this can break upgrades.
  29. # webimage: <docker_image> # nginx/php docker image.
  30. # database:
  31. # type: <dbtype> # mysql, mariadb, postgres
  32. # version: <version> # database version, like "10.11" or "8.0"
  33. # MariaDB versions can be 5.5-10.8, 10.11, 11.4, 11.8
  34. # MySQL versions can be 5.5-8.0, 8.4
  35. # PostgreSQL versions can be 9-17
  36. # router_http_port: <port> # Port to be used for http (defaults to global configuration, usually 80)
  37. # router_https_port: <port> # Port for https (defaults to global configuration, usually 443)
  38. # xdebug_enabled: false # Set to true to enable Xdebug and "ddev start" or "ddev restart"
  39. # Note that for most people the commands
  40. # "ddev xdebug" to enable Xdebug and "ddev xdebug off" to disable it work better,
  41. # as leaving Xdebug enabled all the time is a big performance hit.
  42. # xhgui_https_port: 8142
  43. # Can be used to change the router https port for xhgui application
  44. # Very rarely used
  45. # xhgui_http_port: 8143
  46. # Can be used to change the router http port for xhgui application
  47. # Very rarely used
  48. # host_xhgui_port: 8142
  49. # Can be used to change the host binding port of the xhgui
  50. # application. Rarely used; only when port conflict and
  51. # bind_all_ports is used (normally with router disabled)
  52. # xhprof_enabled: false # Set to true to enable Xhprof and "ddev start" or "ddev restart"
  53. # Note that for most people the commands
  54. # "ddev xhprof" to enable Xhprof and "ddev xhprof off" to disable it work better,
  55. # as leaving Xhprof enabled all the time is a big performance hit.
  56. # xhprof_mode: [prepend|xhgui|global]
  57. # Set to "xhgui" to enable XHGui features
  58. # "xhgui" will become default in a future major release
  59. # webserver_type: nginx-fpm, apache-fpm, generic
  60. # timezone: Europe/Berlin
  61. # If timezone is unset, DDEV will attempt to derive it from the host system timezone
  62. # using the $TZ environment variable or the /etc/localtime symlink.
  63. # This is the timezone used in the containers and by PHP;
  64. # it can be set to any valid timezone,
  65. # see https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
  66. # For example Europe/Dublin or MST7MDT
  67. # composer_root: <relative_path>
  68. # Relative path to the Composer root directory from the project root. This is
  69. # the directory which contains the composer.json and where all Composer related
  70. # 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)
  76. # - stable
  77. # - preview
  78. # - snapshot
  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 rebuild".
  81. # nodejs_version: "22"
  82. # change from the default system Node.js version to any other version.
  83. # See https://ddev.readthedocs.io/en/stable/users/configuration/config/#nodejs_version for more information
  84. # and https://www.npmjs.com/package/n#specifying-nodejs-versions for the full documentation,
  85. # Note that using of 'ddev nvm' is discouraged because "nodejs_version" is much easier to use,
  86. # can specify any version, and is more robust than using 'nvm'.
  87. # corepack_enable: false
  88. # Change to 'true' to 'corepack enable' and gain access to latest versions of yarn/pnpm
  89. # additional_hostnames:
  90. # - somename
  91. # - someothername
  92. # would provide http and https URLs for "somename.ddev.site"
  93. # and "someothername.ddev.site".
  94. # additional_fqdns:
  95. # - example.com
  96. # - sub1.example.com
  97. # would provide http and https URLs for "example.com" and "sub1.example.com"
  98. # Please take care with this because it can cause great confusion.
  99. # upload_dirs: "custom/upload/dir"
  100. #
  101. # upload_dirs:
  102. # - custom/upload/dir
  103. # - ../private
  104. #
  105. # would set the destination paths for ddev import-files to <docroot>/custom/upload/dir
  106. # When Mutagen is enabled this path is bind-mounted so that all the files
  107. # in the upload_dirs don't have to be synced into Mutagen.
  108. # disable_upload_dirs_warning: false
  109. # If true, turns off the normal warning that says
  110. # "You have Mutagen enabled and your 'php' project type doesn't have upload_dirs set"
  111. # ddev_version_constraint: ""
  112. # Example:
  113. # ddev_version_constraint: ">= 1.22.4"
  114. # This will enforce that the running ddev version is within this constraint.
  115. # See https://github.com/Masterminds/semver#checking-version-constraints for
  116. # supported constraint formats
  117. # working_dir:
  118. # web: /var/www/html
  119. # db: /home
  120. # would set the default working directory for the web and db services.
  121. # These values specify the destination directory for ddev ssh and the
  122. # directory in which commands passed into ddev exec are run.
  123. # omit_containers: [db, ddev-ssh-agent]
  124. # Currently only these containers are supported. Some containers can also be
  125. # omitted globally in the ~/.ddev/global_config.yaml. Note that if you omit
  126. # the "db" container, several standard features of DDEV that access the
  127. # database container will be unusable. In the global configuration it is also
  128. # possible to omit ddev-router, but not here.
  129. # performance_mode: "global"
  130. # DDEV offers performance optimization strategies to improve the filesystem
  131. # performance depending on your host system. Should be configured globally.
  132. #
  133. # If set, will override the global config. Possible values are:
  134. # - "global": uses the value from the global config.
  135. # - "none": disables performance optimization for this project.
  136. # - "mutagen": enables Mutagen for this project.
  137. # - "nfs": enables NFS for this project.
  138. #
  139. # See https://ddev.readthedocs.io/en/stable/users/install/performance/#nfs
  140. # See https://ddev.readthedocs.io/en/stable/users/install/performance/#mutagen
  141. # fail_on_hook_fail: False
  142. # Decide whether 'ddev start' should be interrupted by a failing hook
  143. # host_https_port: "59002"
  144. # The host port binding for https can be explicitly specified. It is
  145. # dynamic unless otherwise specified.
  146. # This is not used by most people, most people use the *router* instead
  147. # of the localhost port.
  148. # host_webserver_port: "59001"
  149. # The host port binding for the ddev-webserver can be explicitly specified. It is
  150. # dynamic unless otherwise specified.
  151. # This is not used by most people, most people use the *router* instead
  152. # of the localhost port.
  153. # host_db_port: "59002"
  154. # The host port binding for the ddev-dbserver can be explicitly specified. It is dynamic
  155. # unless explicitly specified.
  156. # mailpit_http_port: "8025"
  157. # mailpit_https_port: "8026"
  158. # The Mailpit ports can be changed from the default 8025 and 8026
  159. # host_mailpit_port: "8025"
  160. # The mailpit port is not normally bound on the host at all, instead being routed
  161. # through ddev-router, but it can be bound directly to localhost if specified here.
  162. # webimage_extra_packages: [php7.4-tidy, php-bcmath]
  163. # 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
  166. # use_dns_when_possible: true
  167. # If the host has internet access and the domain configured can
  168. # successfully be looked up, DNS will be used for hostname resolution
  169. # instead of editing /etc/hosts
  170. # Defaults to true
  171. # project_tld: ddev.site
  172. # The top-level domain used for project URLs
  173. # The default "ddev.site" allows DNS lookup via a wildcard
  174. # If you prefer you can change this to "ddev.local" to preserve
  175. # pre-v1.9 behavior.
  176. # ngrok_args: --basic-auth username:pass1234
  177. # Provide extra flags to the "ngrok http" command, see
  178. # https://ngrok.com/docs/agent/config/v3/#agent-configuration or run "ngrok http -h"
  179. # disable_settings_management: false
  180. # If true, DDEV will not create CMS-specific settings files like
  181. # Drupal's settings.php/settings.ddev.php or TYPO3's additional.php
  182. # In this case the user must provide all such settings.
  183. # You can inject environment variables into the web container with:
  184. # web_environment:
  185. # - SOMEENV=somevalue
  186. # - SOMEOTHERENV=someothervalue
  187. # no_project_mount: false
  188. # (Experimental) If true, DDEV will not mount the project into the web container;
  189. # the user is responsible for mounting it manually or via a script.
  190. # This is to enable experimentation with alternate file mounting strategies.
  191. # For advanced users only!
  192. # bind_all_interfaces: false
  193. # If true, host ports will be bound on all network interfaces,
  194. # not the localhost interface only. This means that ports
  195. # will be available on the local network if the host firewall
  196. # allows it.
  197. # default_container_timeout: 120
  198. # The default time that DDEV waits for all containers to become ready can be increased from
  199. # the default 120. This helps in importing huge databases, for example.
  200. #web_extra_exposed_ports:
  201. #- name: nodejs
  202. # container_port: 3000
  203. # http_port: 2999
  204. # https_port: 3000
  205. #- name: something
  206. # container_port: 4000
  207. # https_port: 4000
  208. # http_port: 3999
  209. # Allows a set of extra ports to be exposed via ddev-router
  210. # Fill in all three fields even if you don’t intend to use the https_port!
  211. # If you don’t add https_port, then it defaults to 0 and ddev-router will fail to start.
  212. #
  213. # The port behavior on the ddev-webserver must be arranged separately, for example
  214. # using web_extra_daemons.
  215. # For example, with a web app on port 3000 inside the container, this config would
  216. # expose that web app on https://<project>.ddev.site:9999 and http://<project>.ddev.site:9998
  217. # web_extra_exposed_ports:
  218. # - name: myapp
  219. # container_port: 3000
  220. # http_port: 9998
  221. # https_port: 9999
  222. #web_extra_daemons:
  223. #- name: "http-1"
  224. # command: "/var/www/html/node_modules/.bin/http-server -p 3000"
  225. # directory: /var/www/html
  226. #- name: "http-2"
  227. # command: "/var/www/html/node_modules/.bin/http-server /var/www/html/sub -p 3000"
  228. # directory: /var/www/html
  229. # override_config: false
  230. # By default, config.*.yaml files are *merged* into the configuration
  231. # But this means that some things can't be overridden
  232. # For example, if you have 'use_dns_when_possible: true'' you can't override it with a merge
  233. # and you can't erase existing hooks or all environment variables.
  234. # However, with "override_config: true" in a particular config.*.yaml file,
  235. # 'use_dns_when_possible: false' can override the existing values, and
  236. # hooks:
  237. # post-start: []
  238. # or
  239. # web_environment: []
  240. # or
  241. # additional_hostnames: []
  242. # can have their intended affect. 'override_config' affects only behavior of the
  243. # config.*.yaml file it exists in.
  244. # Many DDEV commands can be extended to run tasks before or after the
  245. # DDEV command is executed, for example "post-start", "post-import-db",
  246. # "pre-composer", "post-composer"
  247. # See https://ddev.readthedocs.io/en/stable/users/extend/custom-commands/ for more
  248. # information on the commands that can be extended and the tasks you can define
  249. # for them. Example:
  250. #hooks: