2017-02-05 1 views
21

Я недавно установил панель инструментов докеров на моем компьютере с Windows 10.Docker Compose Up дает «Система не может найти указанный файл». ошибка

Однако всякий раз, когда я бегу docker-compose up я получаю следующее сообщение об ошибке:

Traceback (most recent call last): 
    File "<string>", line 3, in <module> 
    File "compose\cli\main.py", line 65, in main 
    File "compose\cli\main.py", line 117, in perform_command 
    File "compose\cli\main.py", line 849, in up 
    File "compose\project.py", line 372, in up 
    File "compose\project.py", line 539, in warn_for_swarm_mode 
    File "site-packages\docker\api\daemon.py", line 33, in info 
    File "site-packages\docker\utils\decorators.py", line 47, in inner 
    File "site-packages\docker\client.py", line 139, in _get 
    File "site-packages\requests\sessions.py", line 488, in get 
    File "site-packages\requests\sessions.py", line 475, in request 
    File "site-packages\requests\sessions.py", line 596, in send 
    File "site-packages\requests\adapters.py", line 423, in send 
    File "site-packages\requests\packages\urllib3\connectionpool.py", line 595, in urlopen 
    File "site-packages\requests\packages\urllib3\connectionpool.py", line 363, in _make_request 
    File "httplib.py", line 1057, in request 
    File "httplib.py", line 1097, in _send_request 
    File "httplib.py", line 1053, in endheaders 
    File "httplib.py", line 897, in _send_output 
    File "httplib.py", line 859, in send 
    File "site-packages\docker\transport\npipeconn.py", line 31, in connect 
    File "site-packages\docker\transport\npipesocket.py", line 22, in wrapped 
    File "site-packages\docker\transport\npipesocket.py", line 49, in connect 
pywintypes.error: (2, 'WaitNamedPipe', 'The system cannot find the file specified.') 
docker-compose returned -1 

Обратите внимание, что у меня есть C:\Python27 и C:\Python27\Scripts в обоих моих пользователей & системных переменных. Я также пробовал это с помощью Python 3, и он все еще не работает.

+0

Возможно, такой же, как этот вопрос? https://github.com/shipping-docker/php-app/issues/19 –

+0

Не могли бы вы добавить конфигурацию 'docker-compose', чтобы мы знали, сопоставляете ли вы тома или какое изображение используете? –

+0

Можете ли вы добавить соответствующий код и конфигурацию Dockerfile? –

ответ

7

Вы и я можем иметь или не иметь такую ​​же проблему. В ссылке, опубликованной @Haken Lid выше, проблема связана с тем, что PATH не имеет правильной версии python.

НО, для меня, вопрос в том, что я еще не ставил все мои ENV переменные, запустив

eval $(docker-machine env <vmname>)

, прежде чем я побежал docker-compose <any command>.

+0

Это сработало для меня. @jenming –

3

Вы можете установить свойства, введя следующие команды

docker-machine env --shell cmd default 
@FOR /f "tokens=*" %i IN ('docker-machine env --shell cmd default') DO @%i 
13

Run докер-слагающих с Докер Quickstart терминала. Он решит вашу ошибку.

+2

Что делать, если это не так? ; o) – Eric

1

Я провел около часа, исправляя эту проблему на своей машине с Windows.

  1. Установить Python (версия 3.6.1 работала нормально для меня), выбрав опцию «Добавить в PATH».
  2. Установить Docker.
  3. Перезагрузите компьютер.
  4. На панели уведомлений вы увидите значок для Docker. Щелкните его правой кнопкой мыши и выберите Settings.... Перейдите по ссылке Shared Drives и выберите C:. Вам будет предложено ввести учетные данные. [*]
  5. Пробег docker build .
  6. Пробег docker-compose up.

    [*]: Если вы этого не сделаете, вы можете увидеть эту ошибку, если на шаге 6: ERROR: for website Cannot create container for service website: C: drive is not shared. Please share it in Docker for Windows Settings. Если после ввода ваших учетных данных диск C: не установлен, создайте нового пользователя для вашего компьютера, который имеет полный доступ к папке, в которой вы будете запускать docker-compose up.

0

Я столкнулся с этим вопросом после того, как терминал быстрого запуска Docker повесил некоторое время на «Ожидание IP ...» во время запуска.

Перезапуск терминала быстрого запуска Docker фиксировал все.

1

У меня была эта проблема со свежей установкой Docker в Windows 10. Моя проблема заключалась в том, что я на самом деле не запускал Docker; Я только что установил .msi и запустил «docker-compose» из командной строки.

Как только я запустил Docker (и последовали несколько шагов после установки, чтобы включить выход из системы и перезагрузить компьютер), я смог без проблем запускать docker-compose.

23

Я просто забыл запустить «Докер для Windows», что привело к этой ошибке.

+0

Другой вариант, если это не сработало, состоит в том, чтобы выключить и снова включить его. Закройте терминал быстрого запуска, вручную откройте Virtualbox, остановите Docker VM (для меня он был назван 'default'), а затем снова откройте терминал быстрого запуска. Это запустит процесс загрузки, возможно, устранит любые связанные с сетью ошибки. – AlbinoDrought

4

Убедитесь, что Docker for Windows включен и запущен в системном трее. Это была моя проблема.

0

Я использовал панель инструментов докеров, так как я на окнах 8.1. После многих часов устранения неполадок я решил эту проблему -> Удаление python 2.7 и установка python 3.6.4 и добавление его в переменные окружения . -> перезапустить терминал док-станции быстрого запуска и выполнить команду оттуда.

+0

Пожалуйста, добавьте описание – Billa

1

В Докер Quickstart Терминал Я побежал docker-machine env, он дал мне:

export DOCKER_TLS_VERIFY="1" 
export DOCKER_HOST="tcp://192.168.99.100:2376" 
export DOCKER_CERT_PATH="C:\Users\TheGeniesis\.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) 

Я побежал eval $("C:\Program Files\Docker Toolbox\docker-machine.exe" env) Вот и все!

Это решение было скопировано из this issue. Я нахожусь на окнах 10 дома. Это решило мою проблему.

Смежные вопросы