{
"name": "ddev",
"description": "DDEV-Local local development environment",
"subcommands": [
{
"name": "auth",
"description": "A collection of authentication commands",
"subcommands": [
{
"name": "ssh",
"description": "Add ssh key authentication to the ddev-ssh-auth container",
"options": [
{
"names": [
"--ssh-key-path",
"-d"
],
"description": "Full path to ssh key directory",
"takes_arg": true,
"arg": {
"name": "ssh-key-path"
}
}
]
}
]
},
{
"name": "clean",
"description": "Removes items ddev has created",
"options": [
{
"names": [
"--all",
"-a"
],
"description": "Clean all ddev projects"
},
{
"names": [
"--dry-run"
],
"description": "Run the clean command without deleting"
}
]
},
{
"name": "composer",
"description": "Executes a composer command within the web container",
"subcommands": [
{
"name": "create",
"description": "Executes 'composer create-project' within the web container with the arguments and flags provided",
"options": [
{
"names": [
"--yes",
"-y"
],
"description": "Yes - skip confirmation prompt"
}
]
},
{
"name": "create-project"
}
]
},
{
"name": "config",
"description": "Create or modify a ddev project configuration in the current directory",
"subcommands": [
{
"name": "global",
"description": "Change global configuration",
"options": [
{
"names": [
"--auto-restart-containers"
],
"description": "If true, automatically restart containers after a reboot or docker restart"
},
{
"names": [
"--disable-http2"
],
"description": "Optionally disable http2 in ddev-router, 'ddev global --disable-http2' or `ddev global --disable-http2=false'"
},
{
"names": [
"--fail-on-hook-fail"
],
"description": "If true, 'ddev start' will fail when a hook fails"
},
{
"names": [
"--instrumentation-opt-in"
],
"description": "Instrumentation-opt-in=true"
},
{
"names": [
"--internet-detection-timeout-ms"
],
"description": "Increase timeout when checking internet timeout, in milliseconds",
"takes_arg": true,
"arg": {
"name": "internet-detection-timeout-ms"
}
},
{
"names": [
"--letsencrypt-email"
],
"description": "Email associated with Let's Encrypt, `ddev global --letsencrypt-email=me@example.com'",
"takes_arg": true,
"arg": {
"name": "letsencrypt-email"
}
},
{
"names": [
"--mutagen-enabled"
],
"description": "If true, web container will use mutagen caching/asynchronous updates"
},
{
"names": [
"--nfs-mount-enabled"
],
"description": "Enable NFS mounting on all projects globally"
},
{
"names": [
"--no-bind-mounts"
],
"description": "If true, don't use bind-mounts - useful for environments like remote docker where bind-mounts are impossible"
},
{
"names": [
"--omit-containers"
],
"description": "For example, --omit-containers=dba,ddev-ssh-agent",
"takes_arg": true,
"arg": {
"name": "omit-containers"
}
},
{
"names": [
"--required-docker-compose-version"
],
"description": "Override default docker-compose version",
"takes_arg": true,
"arg": {
"name": "required-docker-compose-version"
}
},
{
"names": [
"--router-bind-all-interfaces"
],
"description": "Router-bind-all-interfaces=true"
},
{
"names": [
"--simple-formatting"
],
"description": "If true, use simple formatting and no color for tables"
},
{
"names": [
"--table-style"
],
"description": "Table style for list and describe, see ~/.ddev/global_config.yaml for values",
"takes_arg": true,
"arg": {
"name": "table-style"
}
},
{
"names": [
"--use-docker-compose-from-path"
],
"description": "If true, use docker-compose from path instead of private ~/.ddev/bin/docker-compose"
},
{
"names": [
"--use-hardened-images"
],
"description": "If true, use more secure 'hardened' images for an actual internet deployment"
},
{
"names": [
"--use-letsencrypt"
],
"description": "Enables experimental Let's Encrypt integration, 'ddev global --use-letsencrypt' or `ddev global --use-letsencrypt=false'"
},
{
"names": [
"--web-environment"
],
"description": "Set the environment variables in the web container: --web-environment=\"TYPO3_CONTEXT=Development,SOMEENV=someval\"",
"takes_arg": true,
"arg": {
"name": "web-environment"
}
},
{
"names": [
"--web-environment-add"
],
"description": "Append environment variables to the web container: --web-environment=\"TYPO3_CONTEXT=Development,SOMEENV=someval\"",
"takes_arg": true,
"arg": {
"name": "web-environment-add"
}
}
]
}
],
"options": [
{
"names": [
"--additional-fqdns"
],
"description": "A comma-delimited list of FQDNs for the project",
"takes_arg": true,
"arg": {
"name": "additional-fqdns"
}
},
{
"names": [
"--additional-hostnames"
],
"description": "A comma-delimited list of hostnames for the project",
"takes_arg": true,
"arg": {
"name": "additional-hostnames"
}
},
{
"names": [
"--auto"
],
"description": "Automatically run config without prompting"
},
{
"names": [
"--bind-all-interfaces"
],
"description": "Bind host ports on all interfaces, not just on localhost network interface"
},
{
"names": [
"--composer-root"
],
"description": "Overrides the default composer root directory for the web service",
"takes_arg": true,
"arg": {
"name": "composer-root"
}
},
{
"names": [
"--composer-root-default"
],
"description": "Unsets a web service composer root directory override"
},
{
"names": [
"--composer-version"
],
"description": "Specify override for composer version in web container. This may be \"\", \"1\", \"2\", \"2.2\", \"stable\", \"preview\", \"snapshot\" or a specific version",
"takes_arg": true,
"arg": {
"name": "composer-version"
}
},
{
"names": [
"--create-docroot"
],
"description": "Prompts ddev to create the docroot if it doesn't exist"
},
{
"names": [
"--database"
],
"description": "Specify the database type:version to use. Defaults to mariadb:10.4",
"takes_arg": true,
"arg": {
"name": "database"
}
},
{
"names": [
"--db-image"
],
"description": "Sets the db container image",
"takes_arg": true,
"arg": {
"name": "db-image"
}
},
{
"names": [
"--db-image-default"
],
"description": "Sets the default db container image for this ddev version"
},
{
"names": [
"--db-working-dir"
],
"description": "Overrides the default working directory for the db service",
"takes_arg": true,
"arg": {
"name": "db-working-dir"
}
},
{
"names": [
"--db-working-dir-default"
],
"description": "Unsets a db service working directory override"
},
{
"names": [
"--dba-image"
],
"description": "Sets the dba container image",
"takes_arg": true,
"arg": {
"name": "dba-image"
}
},
{
"names": [
"--dba-image-default"
],
"description": "Sets the default dba container image for this ddev version"
},
{
"names": [
"--dba-working-dir"
],
"description": "Overrides the default working directory for the dba service",
"takes_arg": true,
"arg": {
"name": "dba-working-dir"
}
},
{
"names": [
"--dba-working-dir-default"
],
"description": "Unsets a dba service working directory override"
},
{
"names": [
"--dbimage-extra-packages"
],
"description": "A comma-delimited list of Debian packages that should be added to db container when the project is started",
"takes_arg": true,
"arg": {
"name": "dbimage-extra-packages"
}
},
{
"names": [
"--default-container-timeout"
],
"description": "Default time in seconds that ddev waits for all containers to become ready on start",
"takes_arg": true,
"arg": {
"name": "default-container-timeout"
}
},
{
"names": [
"--disable-settings-management"
],
"description": "Prevent ddev from creating or updating CMS settings files"
},
{
"names": [
"--docroot"
],
"description": "Provide the relative docroot of the project, like 'docroot' or 'htdocs' or 'web', defaults to empty, the current directory",
"takes_arg": true,
"arg": {
"name": "docroot"
}
},
{
"names": [
"--fail-on-hook-fail"
],
"description": "Decide whether 'ddev start' should be interrupted by a failing hook"
},
{
"names": [
"--host-db-port"
],
"description": "The db container's localhost-bound port",
"takes_arg": true,
"arg": {
"name": "host-db-port"
}
},
{
"names": [
"--host-dba-port"
],
"description": "The dba (PHPMyAdmin) container's localhost-bound port, if exposed via bind-all-interfaces",
"takes_arg": true,
"arg": {
"name": "host-dba-port"
}
},
{
"names": [
"--host-https-port"
],
"description": "The web container's localhost-bound https port",
"takes_arg": true,
"arg": {
"name": "host-https-port"
}
},
{
"names": [
"--host-webserver-port"
],
"description": "The web container's localhost-bound port",
"takes_arg": true,
"arg": {
"name": "host-webserver-port"
}
},
{
"names": [
"--http-port"
],
"description": "The router HTTP port for this project",
"takes_arg": true,
"arg": {
"name": "http-port"
}
},
{
"names": [
"--https-port"
],
"description": "The router HTTPS port for this project",
"takes_arg": true,
"arg": {
"name": "https-port"
}
},
{
"names": [
"--image-defaults"
],
"description": "Sets the default web, db, and dba container images"
},
{
"names": [
"--mailhog-https-port"
],
"description": "Router port to be used for mailhog access (https)",
"takes_arg": true,
"arg": {
"name": "mailhog-https-port"
}
},
{
"names": [
"--mailhog-port"
],
"description": "Router port to be used for mailhog access",
"takes_arg": true,
"arg": {
"name": "mailhog-port"
}
},
{
"names": [
"--mutagen-enabled"
],
"description": "Enable mutagen asynchronous update of project in web container"
},
{
"names": [
"--nfs-mount-enabled"
],
"description": "Enable NFS mounting of project in container"
},
{
"names": [
"--ngrok-args"
],
"description": "Provide extra args to ngrok in ddev share",
"takes_arg": true,
"arg": {
"name": "ngrok-args"
}
},
{
"names": [
"--no-project-mount"
],
"description": "Whether or not to skip mounting project code into the web container"
},
{
"names": [
"--nodejs-version"
],
"description": "Specify the nodejs version to use if you don't want the default NodeJS 16",
"takes_arg": true,
"arg": {
"name": "nodejs-version"
}
},
{
"names": [
"--omit-containers"
],
"description": "A comma-delimited list of container types that should not be started when the project is started",
"takes_arg": true,
"arg": {
"name": "omit-containers"
}
},
{
"names": [
"--php-version"
],
"description": "The version of PHP that will be enabled in the web container",
"takes_arg": true,
"arg": {
"name": "php-version"
}
},
{
"names": [
"--phpmyadmin-https-port"
],
"description": "Router port to be used for PHPMyAdmin (dba) container access (https)",
"takes_arg": true,
"arg": {
"name": "phpmyadmin-https-port"
}
},
{
"names": [
"--phpmyadmin-port"
],
"description": "Router port to be used for PHPMyAdmin (dba) container access",
"takes_arg": true,
"arg": {
"name": "phpmyadmin-port"
}
},
{
"names": [
"--project-name"
],
"description": "Provide the project name of project to configure (normally the same as the last part of directory name)",
"takes_arg": true,
"arg": {
"name": "project-name"
}
},
{
"names": [
"--project-tld"
],
"description": "Set the top-level domain to be used for projects, defaults to ddev.site",
"takes_arg": true,
"arg": {
"name": "project-tld"
}
},
{
"names": [
"--project-type"
],
"description": "Provide the project type (one of backdrop, drupal10, drupal6, drupal7, drupal8, drupal9, laravel, magento, magento2, php, shopware6, typo3, wordpress). This is autodetected and this flag is necessary ",
"takes_arg": true,
"arg": {
"name": "project-type"
}
},
{
"names": [
"--show-config-location"
],
"description": "Output the location of the config.yaml file if it exists, or error that it doesn't exist"
},
{
"names": [
"--timezone"
],
"description": "Specify timezone for containers and php, like Europe/London or America/Denver or GMT or UTC",
"takes_arg": true,
"arg": {
"name": "timezone"
}
},
{
"names": [
"--upload-dir"
],
"description": "Sets the project's upload directory, the destination directory of the import-files command",
"takes_arg": true,
"arg": {
"name": "upload-dir"
}
},
{
"names": [
"--use-dns-when-possible"
],
"description": "Use DNS for hostname resolution instead of /etc/hosts when possible"
},
{
"names": [
"--web-environment"
],
"description": "Set the environment variables in the web container: --web-environment=\"TYPO3_CONTEXT=Development,SOMEENV=someval\"",
"takes_arg": true,
"arg": {
"name": "web-environment"
}
},
{
"names": [
"--web-environment-add"
],
"description": "Append environment variables to the web container: --web-environment=\"TYPO3_CONTEXT=Development,SOMEENV=someval\"",
"takes_arg": true,
"arg": {
"name": "web-environment-add"
}
},
{
"names": [
"--web-image"
],
"description": "Sets the web container image",
"takes_arg": true,
"arg": {
"name": "web-image"
}
},
{
"names": [
"--web-image-default"
],
"description": "Sets the default web container image for this ddev version"
},
{
"names": [
"--web-working-dir"
],
"description": "Overrides the default working directory for the web service",
"takes_arg": true,
"arg": {
"name": "web-working-dir"
}
},
{
"names": [
"--web-working-dir-default"
],
"description": "Unsets a web service working directory override"
},
{
"names": [
"--webimage-extra-packages"
],
"description": "A comma-delimited list of Debian packages that should be added to web container when the project is started",
"takes_arg": true,
"arg": {
"name": "webimage-extra-packages"
}
},
{
"names": [
"--webserver-type"
],
"description": "Sets the project's desired webserver type: nginx-fpm or apache-fpm",
"takes_arg": true,
"arg": {
"name": "webserver-type"
}
},
{
"names": [
"--working-dir-defaults"
],
"description": "Unsets all service working directory overrides"
},
{
"names": [
"--xdebug-enabled"
],
"description": "Whether or not XDebug is enabled in the web container"
}
]
},
{
"name": "d",
"aliases": [
"dbg",
"debug"
],
"description": "A collection of debugging commands",
"subcommands": [
{
"name": "capabilities",
"description": "Show capabilities of this version of ddev"
},
{
"name": "check-db-match",
"description": "Verify that the database in the ddev-db server matches the configured type/version"
},
{
"name": "compose-config",
"description": "Prints the docker-compose configuration of the current project"
},
{
"name": "configyaml",
"description": "Prints the project config.*.yaml usage"
},
{
"name": "dockercheck",
"description": "Diagnose DDEV docker/colima setup"
},
{
"name": "download-images",
"description": "Download all images required by ddev"
},
{
"name": "fix-commands",
"description": "Fix up custom/shell commands without running ddev start"
},
{
"name": "get-volume-db-version",
"description": "Get the database type/version found in the ddev-dbserver's database volume, which may not be the same as the configured database type/version"
},
{
"name": "migrate-database",
"description": "Migrate a mysql or mariadb database to a different dbtype:dbversion; works only with mysql and mariadb, not with postgres"
},
{
"name": "mutagen",
"description": "Allows access to any mutagen command"
},
{
"name": "nfsmount",
"description": "Checks to see if nfs mounting works for current project"
},
{
"name": "refresh",
"description": "Refreshes docker cache for project"
},
{
"name": "router-nginx-config",
"description": "Prints the nginx config of the router"
},
{
"name": "test",
"description": "Run diagnostics on ddev using the embedded test_ddev.sh script"
}
]
},
{
"name": "delete",
"description": "Remove all project information (including database) for an existing project",
"subcommands": [
{
"name": "images",
"description": "Deletes drud/ddev-* docker images not in use by current ddev version",
"options": [
{
"names": [
"--all",
"-a"
],
"description": "If set, deletes all Docker images created by ddev"
},
{
"names": [
"--yes",
"-y"
],
"description": "Yes - skip confirmation prompt"
}
]
}
],
"options": [
{
"names": [
"--all",
"-a"
],
"description": "Delete all projects"
},
{
"names": [
"--clean-containers"
],
"description": "Clean up all ddev docker containers which are not required by this version of ddev"
},
{
"names": [
"--omit-snapshot",
"-O"
],
"description": "Omit/skip database snapshot"
},
{
"names": [
"--yes",
"-y"
],
"description": "Yes - skip confirmation prompt"
}
]
},
{
"name": "desc",
"aliases": [
"st",
"status",
"describe"
],
"description": "Get a detailed description of a running ddev project"
},
{
"name": ".",
"aliases": [
"exec"
],
"description": "Execute a shell command in the container for a service. Uses the web service by default",
"options": [
{
"names": [
"--dir",
"-d"
],
"description": "Defines the execution directory within the container",
"takes_arg": true,
"arg": {
"name": "dir"
}
},
{
"names": [
"--raw"
],
"description": "Use raw exec (do not interpret with bash inside container)"
},
{
"names": [
"--service",
"-s"
],
"description": "Defines the service to connect to. [e.g. web, db]",
"takes_arg": true,
"arg": {
"name": "service"
}
}
]
},
{
"name": "export-db",
"description": "Dump a database to a file or to stdout",
"options": [
{
"names": [
"--bzip2"
],
"description": "Use bzip2 compression"
},
{
"names": [
"--file",
"-f"
],
"description": "Provide the path to output the dump",
"takes_arg": true,
"arg": {
"name": "file"
}
},
{
"names": [
"--gzip",
"-z"
],
"description": "Use gzip compression"
},
{
"names": [
"--target-db",
"-d"
],
"description": "If provided, target-db is alternate database to export",
"takes_arg": true,
"arg": {
"name": "target-db"
}
},
{
"names": [
"--xz"
],
"description": "Use xz compression"
}
]
},
{
"name": "get",
"description": "Get/Download a 3rd party add-on (service, provider, etc.)",
"options": [
{
"names": [
"--all"
],
"description": "List unofficial add-ons for 'ddev get' in addition to the official ones"
},
{
"names": [
"--list"
],
"description": "List available add-ons for 'ddev get'"
}
]
},
{
"name": "hostname",
"description": "Manage your hostfile entries",
"options": [
{
"names": [
"--remove",
"-r"
],
"description": "Remove the provided host name - ip correlation"
},
{
"names": [
"--remove-inactive",
"-R"
],
"description": "Remove host names of inactive projects"
}
]
},
{
"name": "import-db",
"description": "Import a sql file into the project",
"options": [
{
"names": [
"--extract-path"
],
"description": "If provided asset is an archive, provide the path to extract within the archive",
"takes_arg": true,
"arg": {
"name": "extract-path"
}
},
{
"names": [
"--no-drop"
],
"description": "Set if you do NOT want to drop the db before importing"
},
{
"names": [
"--progress",
"-p"
],
"description": "Display a progress bar during import"
},
{
"names": [
"--src",
"-f"
],
"description": "Provide the path to a sql dump in .sql or tar/tar.gz/tgz/zip format",
"takes_arg": true,
"arg": {
"name": "src"
}
},
{
"names": [
"--target-db",
"-d"
],
"description": "If provided, target-db is alternate database to import into",
"takes_arg": true,
"arg": {
"name": "target-db"
}
}
]
},
{
"name": "import-files",
"description": "Pull the uploaded files directory of an existing project to the default public upload directory of your project",
"options": [
{
"names": [
"--extract-path"
],
"description": "If provided asset is an archive, optionally provide the path to extract within the archive",
"takes_arg": true,
"arg": {
"name": "extract-path"
}
},
{
"names": [
"--src"
],
"description": "Provide the path to the source directory or tar/tar.gz/tgz/zip archive of files to import",
"takes_arg": true,
"arg": {
"name": "src"
}
}
]
},
{
"name": "l",
"aliases": [
"ls",
"list"
],
"description": "List projects",
"options": [
{
"names": [
"--active-only",
"-A"
],
"description": "If set, only currently active projects will be displayed"
},
{
"names": [
"--continuous"
],
"description": "If set, project information will be emitted until the command is stopped"
},
{
"names": [
"--continuous-sleep-interval",
"-I"
],
"description": "Time in seconds between ddev list --continuous output lists",
"takes_arg": true,
"arg": {
"name": "continuous-sleep-interval"
}
},
{
"names": [
"--wrap-table",
"-W"
],
"description": "Display table with wrapped text if required"
}
]
},
{
"name": "logs",
"description": "Get the logs from your running services",
"options": [
{
"names": [
"--follow",
"-f"
],
"description": "Follow the logs in real time"
},
{
"names": [
"--service",
"-s"
],
"description": "Defines the service to retrieve logs from. [e.g. web, db]",
"takes_arg": true,
"arg": {
"name": "service"
}
},
{
"names": [
"--tail"
],
"description": "How many lines to show",
"takes_arg": true,
"arg": {
"name": "tail"
}
},
{
"names": [
"--time",
"-t"
],
"description": "Add timestamps to logs"
}
]
},
{
"name": "mutagen",
"description": "Commands for mutagen status and sync, etc",
"subcommands": [
{
"name": "monitor",
"description": "Monitor mutagen status"
},
{
"name": "reset",
"description": "Reset mutagen for project"
},
{
"name": "st",
"aliases": [
"status"
],
"description": "Shows mutagen sync status",
"options": [
{
"names": [
"--verbose",
"-l"
],
"description": "Extended/verbose output for mutagen status"
}
]
},
{
"name": "sync",
"description": "Explicit sync for mutagen",
"options": [
{
"names": [
"--verbose"
],
"description": "Extended/verbose output for mutagen status"
}
]
}
]
},
{
"name": "sc",
"aliases": [
"stop-containers",
"pause"
],
"description": "Uses 'docker stop' to pause/stop the containers belonging to a project",
"options": [
{
"names": [
"--all",
"-a"
],
"description": "Pause all running projects"
}
]
},
{
"name": "powerdown",
"aliases": [
"poweroff"
],
"description": "Completely stop all projects and containers"
},
{
"name": "pull",
"description": "Pull files and database using a configured provider plugin"
},
{
"name": "push",
"description": "Push files and database using a configured provider plugin"
},
{
"name": "restart",
"description": "Restart a project or several projects",
"options": [
{
"names": [
"--all",
"-a"
],
"description": "Restart all projects"
}
]
},
{
"name": "service",
"description": "Add or remove, enable or disable extra services",
"subcommands": [
{
"name": "disable",
"description": "Disable a 3rd party service"
},
{
"name": "enable",
"description": "Enable a 3rd party service"
}
]
},
{
"name": "share",
"description": "Share project on the internet via ngrok",
"options": [
{
"names": [
"--subdomain"
],
"description": "Ngrok --subdomain argument, as in \"ngrok --subdomain my-subdomain:, requires paid ngrok.com account\"",
"takes_arg": true,
"arg": {
"name": "subdomain"
}
}
]
},
{
"name": "snapshot",
"description": "Create a database snapshot for one or more projects",
"options": [
{
"names": [
"--all",
"-a"
],
"description": "Snapshot all projects. Will start the project if it is stopped or paused"
},
{
"names": [
"--cleanup",
"-C"
],
"description": "Cleanup snapshots"
},
{
"names": [
"--list",
"-l"
],
"description": "List snapshots"
},
{
"names": [
"--name",
"-n"
],
"description": "Provide a name for the snapshot",
"takes_arg": true,
"arg": {
"name": "name"
}
},
{
"names": [
"--yes",
"-y"
],
"description": "Yes - skip confirmation prompt"
}
]
},
{
"name": "ssh",
"description": "Starts a shell session in the container for a service. Uses web service by default",
"options": [
{
"names": [
"--dir",
"-d"
],
"description": "Defines the destination directory within the container",
"takes_arg": true,
"arg": {
"name": "dir"
}
},
{
"names": [
"--service",
"-s"
],
"description": "Defines the service to connect to. [e.g. web, db]",
"takes_arg": true,
"arg": {
"name": "service"
}
}
]
},
{
"name": "add",
"aliases": [
"start"
],
"description": "Start a ddev project",
"options": [
{
"names": [
"--all",
"-a"
],
"description": "Start all projects"
},
{
"names": [
"--select",
"-s"
],
"description": "Interactively select a project to start"
},
{
"names": [
"--skip-confirmation",
"-y"
],
"description": "Skip any confirmation steps"
}
]
},
{
"name": "remove",
"aliases": [
"rm",
"stop"
],
"description": "Stop and remove the containers of a project. Does not lose or harm anything unless you add --remove-data",
"options": [
{
"names": [
"--all",
"-a"
],
"description": "Stop and remove all running or container-stopped projects and remove from global projects list"
},
{
"names": [
"--omit-snapshot",
"-O"
],
"description": "Omit/skip database snapshot"
},
{
"names": [
"--remove-data",
"-R"
],
"description": "Remove stored project data (MySQL, logs, etc.)"
},
{
"names": [
"--select",
"-s"
],
"description": "Interactively select a project to stop"
},
{
"names": [
"--snapshot",
"-S"
],
"description": "Create database snapshot"
},
{
"names": [
"--stop-ssh-agent"
],
"description": "Stop the ddev-ssh-agent container"
},
{
"names": [
"--unlist",
"-U"
],
"description": "Remove the project from global project list, it won't show in ddev list until started again"
}
]
},
{
"name": "version",
"description": "Print ddev version and component versions"
},
{
"name": "help",
"description": "Help about any command",
"subcommands": [
{
"name": "auth",
"description": "A collection of authentication commands",
"subcommands": [
{
"name": "ssh",
"description": "Add ssh key authentication to the ddev-ssh-auth container"
}
]
},
{
"name": "clean",
"description": "Removes items ddev has created"
},
{
"name": "composer",
"description": "Executes a composer command within the web container",
"subcommands": [
{
"name": "create",
"description": "Executes 'composer create-project' within the web container with the arguments and flags provided"
},
{
"name": "create-project"
}
]
},
{
"name": "config",
"description": "Create or modify a ddev project configuration in the current directory",
"subcommands": [
{
"name": "global",
"description": "Change global configuration"
}
]
},
{
"name": "d",
"aliases": [
"dbg",
"debug"
],
"description": "A collection of debugging commands",
"subcommands": [
{
"name": "capabilities",
"description": "Show capabilities of this version of ddev"
},
{
"name": "check-db-match",
"description": "Verify that the database in the ddev-db server matches the configured type/version"
},
{
"name": "compose-config",
"description": "Prints the docker-compose configuration of the current project"
},
{
"name": "configyaml",
"description": "Prints the project config.*.yaml usage"
},
{
"name": "dockercheck",
"description": "Diagnose DDEV docker/colima setup"
},
{
"name": "download-images",
"description": "Download all images required by ddev"
},
{
"name": "fix-commands",
"description": "Fix up custom/shell commands without running ddev start"
},
{
"name": "get-volume-db-version",
"description": "Get the database type/version found in the ddev-dbserver's database volume, which may not be the same as the configured database type/version"
},
{
"name": "migrate-database",
"description": "Migrate a mysql or mariadb database to a different dbtype:dbversion; works only with mysql and mariadb, not with postgres"
},
{
"name": "mutagen",
"description": "Allows access to any mutagen command"
},
{
"name": "nfsmount",
"description": "Checks to see if nfs mounting works for current project"
},
{
"name": "refresh",
"description": "Refreshes docker cache for project"
},
{
"name": "router-nginx-config",
"description": "Prints the nginx config of the router"
},
{
"name": "test",
"description": "Run diagnostics on ddev using the embedded test_ddev.sh script"
}
]
},
{
"name": "delete",
"description": "Remove all project information (including database) for an existing project",
"subcommands": [
{
"name": "images",
"description": "Deletes drud/ddev-* docker images not in use by current ddev version"
}
]
},
{
"name": "desc",
"aliases": [
"st",
"status",
"describe"
],
"description": "Get a detailed description of a running ddev project"
},
{
"name": ".",
"aliases": [
"exec"
],
"description": "Execute a shell command in the container for a service. Uses the web service by default"
},
{
"name": "export-db",
"description": "Dump a database to a file or to stdout"
},
{
"name": "get",
"description": "Get/Download a 3rd party add-on (service, provider, etc.)"
},
{
"name": "hostname",
"description": "Manage your hostfile entries"
},
{
"name": "import-db",
"description": "Import a sql file into the project"
},
{
"name": "import-files",
"description": "Pull the uploaded files directory of an existing project to the default public upload directory of your project"
},
{
"name": "l",
"aliases": [
"ls",
"list"
],
"description": "List projects"
},
{
"name": "logs",
"description": "Get the logs from your running services"
},
{
"name": "mutagen",
"description": "Commands for mutagen status and sync, etc",
"subcommands": [
{
"name": "monitor",
"description": "Monitor mutagen status"
},
{
"name": "reset",
"description": "Reset mutagen for project"
},
{
"name": "st",
"aliases": [
"status"
],
"description": "Shows mutagen sync status"
},
{
"name": "sync",
"description": "Explicit sync for mutagen"
}
]
},
{
"name": "sc",
"aliases": [
"stop-containers",
"pause"
],
"description": "Uses 'docker stop' to pause/stop the containers belonging to a project"
},
{
"name": "powerdown",
"aliases": [
"poweroff"
],
"description": "Completely stop all projects and containers"
},
{
"name": "pull",
"description": "Pull files and database using a configured provider plugin"
},
{
"name": "push",
"description": "Push files and database using a configured provider plugin"
},
{
"name": "restart",
"description": "Restart a project or several projects"
},
{
"name": "service",
"description": "Add or remove, enable or disable extra services",
"subcommands": [
{
"name": "disable",
"description": "Disable a 3rd party service"
},
{
"name": "enable",
"description": "Enable a 3rd party service"
}
]
},
{
"name": "share",
"description": "Share project on the internet via ngrok"
},
{
"name": "snapshot",
"description": "Create a database snapshot for one or more projects"
},
{
"name": "ssh",
"description": "Starts a shell session in the container for a service. Uses web service by default"
},
{
"name": "add",
"aliases": [
"start"
],
"description": "Start a ddev project"
},
{
"name": "remove",
"aliases": [
"rm",
"stop"
],
"description": "Stop and remove the containers of a project. Does not lose or harm anything unless you add --remove-data"
},
{
"name": "version",
"description": "Print ddev version and component versions"
}
]
}
],
"options": [
{
"names": [
"--json-output",
"-j"
],
"description": "If true, user-oriented output will be in JSON format"
},
{
"names": [
"--help",
"-h"
],
"description": "Display help"
}
]
}