Недопустимая конфигурация монтирования для типа "связать": исходный путь связывания не существует при попытке запустить контейнер в Docker для Windows

Я пытаюсь запустить образец Prometheus по адресу https://docs.docker.com/engine/admin/prometheus/, используя Docker в Windows. Я выполняю следующую команду:

docker service create --replicas 1 --name my-prometheus `
   --mount type=bind,source="C:/temp/prometheus.yml",destination=/etc/prometheus/prometheus.yml `
   --publish published=9090,target=9090,protocol=tcp `
   prom/prometheus

Ошибка: неверная конфигурация монтирования для типа "связать": исходный путь связывания не существует

Я почти уверен, что файл существует (Test-Path с PowerShell возвращает true).

Есть идеи, что я делаю не так?

Обновить

Выполнение той же команды с mount type = volume дает мне следующую ошибку:

C: /temp/prometheus.yml "содержит недопустимые символы для имени локального тома, разрешены только"[a-zA-Z0-9][a-zA-Z0-9_.-]". Если вы намеревались передать каталог хоста, используйте абсолютный путь

Я передаю каталог хоста и "C:/temp/prometheus.yml" это абсолютный путь.

2 ответа

Вы можете столкнуться с этим в Windows после изменения пароля учетной записи Windows.

  1. Откройте Docker для настроек Windows.
  2. На вкладке "Общие диски" нажмите "Сбросить учетные данные"...
  3. Поделитесь своим диском еще раз.

у меня такая же ошибка произошла со мной. как показано на рисунке ниже, снимите флажок «Использовать Docker Compose V2», и это сработает для меня. Я хотел поделиться на случай, если это может быть решение для кого-то

Другие вопросы по тегам