Конфигурация
Использование Windows 10, Docker Toolbox ( не собственный Docker, чтобы иметь возможность использовать виртуальные машины).
Фон
Естьскрипт Python (2.7), который должен запускать контейнер Docker.Код выглядит следующим образом:
self.docker.containers.run('container_name',
command='bash -c "%s"' % command,
volumes={PROJECT_PATH: {'bind': '/shared', 'mode': 'rw'}},
working_dir='/shared',
remove=True,
**kwargs)
Проблема
Попытка запустить скрипт:
* Building the DummyProbe docker image
* Running the DummyProbe container
500 Server Error: Internal Server Error ("invalid volume specification: 'C:\Users\Foo\..:/shared:rw'")
Мысли
После поиска в Интернете invalid volume specification
, кажется, вызвано тем, как Windows и Linux обрабатывают структуру каталогов.Linux использует косую черту /
, а Windows - обратную косую черту \
.Похожие вопросы:
Однако в моем случае COMPOSE_CONVERT_WINDOWS_PATHS
установлен (на true
, также попытался установить на 1
):
PowerShell
Docker Toolbox
$ docker-machine env
export DOCKER_TLS_VERIFY="1"
export DOCKER_HOST="tcp://111.111.11.111:1111"
export DOCKER_CERT_PATH="C:\Users\Foo\.docker\machine\machines\default"
export DOCKER_MACHINE_NAME="default"
export COMPOSE_CONVERT_WINDOWS_PATHS="true"
# Run this command to configure your shell:
# eval $("C:\Program Files\Docker Toolbox\docker-machine.exe" env)
Ни одно из предложений в других вопросах не работает.
Обновление
Пытался использовать для замены \
на/
и используйте его в сценарии:
500 Server Error: Internal Server Error ("invalid volume specification: 'C:/Users/***/..:/shared:rw'")
Так что, похоже, это не проблема