Пример создания "Приступая к работе" в докере вызывает "Недопустимая спецификация тома" в Windows
Я абсолютно новый для Докера. Я выполнил шаги, описанные в учебнике Docker Compose "Начало работы" :
- Установить панель инструментов Docker
- Запустить терминал быстрого запуска Docker
- Добавить файлы проекта
- Запустить команду
docker-compose up
И я получил следующую ошибку:
ERROR: for web Cannot create container for service web: Invalid bind mount spec "D:\\Projects\\composetest:/code:rw": Invalid volume specification: 'D:\Projects\composetest:/code:rw'
[31mERROR[0m: Encountered errors while bringing up the project.
докер-compose.yml:
version: '2'
services:
web:
build: .
ports:
- "5000:5000"
volumes:
- .:/code:rw
redis:
image: "redis:alpine"
Структура проекта:
D:\Projects\composetest
├── app.py
├── docker-compose.yml
├── Dockerfile
└── requirements.txt
Моя конфигурация:
- Windows 10 Single Language
- Docker Toolbox 1.12.5
Почему это происходит? Есть ли способ обхода?
Ответы
Ответ 1
Я нашел решение. Проблема в том, что я не задал переменную окружения COMPOSE_CONVERT_WINDOWS_PATHS
. Он описан в переменных CLI doc.
Итак, если эта проблема существует, вы должны создать новую переменную среды Windows под названием COMPOSE_CONVERT_WINDOWS_PATHS
и установить ее в 1
. Или вы можете создать файл .env
на пути docker-compose.yml
, размещенный со следующим содержимым:
COMPOSE_CONVERT_WINDOWS_PATHS=1
Он решит эту проблему.