Сегодня попробовал настроить ddev на машине друга:
ОС Windows 10 Home Docker Toolbox - новая установка Docker Toolbox Quickstart -> указание, что нам нужно включить виртуализацию
BIOS -> Виртуализация -> запускается isEnabled Docker Toolbox Quickstart.
druds ddev для windows 10 свежая установленная конфигурация ddev работает.
snowm @ ThomasWin10HP MINGW64 / c / Data3 / test $ ddev start Запуск теста ... Создание ddev-test-db ... ошибка
ОШИБКА: для ddev-test-db Невозможно создать контейнер для службы db: недопустимая конфигурация монтирования для типа «bind»: исходный путь монтирования привязки не существует: /c/Data3/test/.ddev
ОШИБКА: для db Невозможно создать контейнер для службы db: неверная конфигурация монтирования для типа "bind": bind исходный путь монтирования не существует: /c/Data3/test/.ddev Обнаружены ошибки при запуске проекта. Ошибка создания ddev-test-db ...
ОШИБКА: для ddev-test-db Невозможно создать контейнер для службы db: неверная конфигурация монтирования для типа «bind»: исходный путь монтирования привязки не существует: /c/Data3/test/.ddev
ОШИБКА: для db Невозможно создать контейнер для службы db: неверная конфигурация монтирования для типа "bind": bind исходный путь монтирования не существует: /c/Data3/test/.ddev Обнаружены ошибки при запуске проекта. '
но для уверенности, что путь существует. :-(
Мы читаем это (совместное использование дисков с докером), но похоже, что у проекта панели инструментов докера нет этого графического интерфейса: Недопустимая конфигурация монтирования для типа bind: исходный путь привязки не существует при попытке запустить контейнер в Docker для Windows
config.yaml выглядит так:
APIVersion: v1.2.0
Name: test
type: typo3
docroot: www
php_version: "7.2"
webserver_type: nginx-fpm
router_http_port: "80"
router_https_port: "443"
xdebug_enabled: false
additional_hostnames: []
additional_fqdns: []
provider: default
docker-compose.yaml выглядит так
version: '3.6'
#ddev-generated
services:
db:
container_name: ddev-${DDEV_SITENAME}-db
image: $DDEV_DBIMAGE
stop_grace_period: 60s
volumes:
- type: "volume"
source: mariadb-database
target: "/var/lib/mysql"
volume:
nocopy: true
- type: "bind"
source: "${DDEV_IMPORTDIR}"
target: "/db"
- type: "bind"
source: "."
target: "/mnt/ddev_config"
restart: "no"
user: "$DDEV_UID:$DDEV_GID"
ports:
- "3306"
labels:
com.ddev.site-name: ${DDEV_SITENAME}
com.ddev.platform: ddev
com.ddev.app-type: typo3
com.ddev.approot: $DDEV_APPROOT
com.ddev.app-url: $DDEV_URL
environment:
- COLUMNS=$COLUMNS
- LINES=$LINES
command: "$DDEV_MARIADB_LOCAL_COMMAND"
web:
container_name: ddev-${DDEV_SITENAME}-web
image: $DDEV_WEBIMAGE
volumes:
- "../:/var/www/html:cached"
- ".:/mnt/ddev_config:ro"
restart: "no"
user: "$DDEV_UID:$DDEV_GID"
depends_on:
- db
links:
- db:db
# ports is list of exposed *container* ports
ports:
- "80"
- "8025"
working_dir: /var/www/html/${DDEV_DOCROOT}
environment:
- DDEV_URL=$DDEV_URL
- DOCROOT=$DDEV_DOCROOT
- DDEV_PHP_VERSION=$DDEV_PHP_VERSION
- DDEV_WEBSERVER_TYPE=$DDEV_WEBSERVER_TYPE
- DDEV_PROJECT_TYPE=$DDEV_PROJECT_TYPE
- DDEV_ROUTER_HTTP_PORT=$DDEV_ROUTER_HTTP_PORT
- DDEV_ROUTER_HTTPS_PORT=$DDEV_ROUTER_HTTPS_PORT
- DDEV_XDEBUG_ENABLED=$DDEV_XDEBUG_ENABLED
- DEPLOY_NAME=local
- VIRTUAL_HOST=$DDEV_HOSTNAME
- COLUMNS=$COLUMNS
- LINES=$LINES
# HTTP_EXPOSE allows for ports accepting HTTP traffic to be accessible from <site>.ddev.local:<port>
# To expose a container port to a different host port, define the port as hostPort:containerPort
- HTTP_EXPOSE=${DDEV_ROUTER_HTTP_PORT}:80,8025
# You can optionally expose an HTTPS port option for any ports defined in HTTP_EXPOSE.
# To expose an HTTPS port, define the port as securePort:containerPort.
- HTTPS_EXPOSE=${DDEV_ROUTER_HTTPS_PORT}:80
labels:
com.ddev.site-name: ${DDEV_SITENAME}
com.ddev.platform: ddev
com.ddev.app-type: typo3
com.ddev.approot: $DDEV_APPROOT
com.ddev.app-url: $DDEV_URL
extra_hosts: ["unneeded:127.0.0.1"]
dba:
container_name: ddev-${DDEV_SITENAME}-dba
image: $DDEV_DBAIMAGE
restart: "no"
labels:
com.ddev.site-name: ${DDEV_SITENAME}
com.ddev.platform: ddev
com.ddev.app-type: typo3
com.ddev.approot: $DDEV_APPROOT
com.ddev.app-url: $DDEV_URL
depends_on:
- db
links:
- db:db
ports:
- "80"
environment:
- PMA_USER=db
- PMA_PASSWORD=db
- VIRTUAL_HOST=$DDEV_HOSTNAME
# HTTP_EXPOSE allows for ports accepting HTTP traffic to be accessible from <site>.ddev.local:<port>
- HTTP_EXPOSE=8036
networks:
default:
external:
name: ddev_default
volumes:
mariadb-database:
name: "${DDEV_SITENAME}-mariadb"
Решение:
Мы удалили все (~ / .ddev ~ / .docker и т. Д.), Удалили панель инструментов docker, ddev и виртуальный ящик и на этот раз выполнили ТОЧНО это «Шаг за шагом»:
- СНАЧАЛА включите виртуализацию в настройках BIOS
- затем установите docker Toolbox как ADMIN и позвольте Docker Toolbox также установить virtualbox с сетевым драйвером ndis (последний флажок)
- Подождите и пока ничего не делайте, чтобы убедиться, что увидите ACL - Вопросы
- Запустите виртуальный бокс от имени администратора (теперь сетевой адаптер создан)
- ПЕРЕЗАГРУЗИТЕ Windows, чтобы все запустилось правильно
- установите ddev als Administrator, позвольте ему создать ярлык и добавить себя в путь к Windows
- запустите терминал быстрого запуска docker и позвольте Docker Toolbox создать виртуальный контейнер по умолчанию
переключиться в домашний каталог пользователей
cd ~ mkdir web cd web mkdir testdomain cd testdomain ddev start
Благодаря fray, его намек на то, что проект ddev должен находиться в домашнем каталоге пользователей, был основной причиной, по которой он не работает.
Может быть, один или несколько из вышеперечисленных шагов не важны, но, поскольку он сейчас работает, я оставлю его как есть :-)