Docker node-windows: загадочная ошибка «ошибка во время CreateProcess: ошибка в системном вызове Windows» файл не найден - PullRequest
0 голосов
/ 06 сентября 2018

На Windows Server 2016 установлен докер и пытается запустить образ докера с помощью nodejs.

docker run stefanscherer/node-windows "node -v"

выдает ошибку со следующим «сообщением»:

docker: Ответ об ошибке от демона: контейнер 47c736ce10987311aee01695f735bcfda52222b9effe856c44fd492685249438 При возникновении ошибки произошла ошибка во время ошибки: ошибкав системном вызове Windows: это более интуитивно понятно.(0x2) дополнительная информация: {"CommandLine": "\" node -v \ "", "WorkingDirectory": "C: \", "Environment": {"NPM_CONFIG_LOGLEVEL": "info"}, "CreateStdInPipe": true, "CreateStdOutPipe": true, "CreateStdErrPipe": true, "ConsoleSize": [0,0]}.

Некоторое тестирование

Самое странное, что некоторые команды не были выполнены сэто точно такая же ошибка, некоторые работают.Например:

docker run stefanscherer/node-windows "hostname" => ecbf0a7a7979

docker run stefanscherer/node-windows "dir" => та же ошибка, что и выше (encountered an error during CreateProcess)

docker run stefanscherer/node-windows "pwd" =>

(результат, кажется, пустая строка)

Еще несколько тестов

docker run -it stefanscherer/node-windows "cmd"

Microsoft Windows [Version 10.0.14393]                         
(c) 2016 Microsoft Corporation. All rights reserved.           

C:\>node -v                                                    
v10.9.0                                                        

C:\>npm -v                                                     
npm info it worked if it ends with ok                          
npm info using npm@6.2.0                                       
npm info using node@v10.9.0                                    
npm timing npm Completed in 353ms                              
npm info ok                                                    
6.2.0  

Итак, у меня есть оболочка внутриОбраз узла докера ... и получить версию узла и все без ошибок.

Мои версии

windows: `Server 2016 Standard Evaluation 1607 Build14393.rs1_release.161220-1747``

Докер:

λ docker -v
Docker version 18.06.1-ce, build e68fc7a

λ docker version
Client:
 Version:           18.06.1-ce
 API version:       1.38
 Go version:        go1.10.3
 Git commit:        e68fc7a
 Built:             Tue Aug 21 17:21:34 2018
 OS/Arch:           windows/amd64
 Experimental:      false

Server:
 Engine:
  Version:          18.06.1-ce
  API version:      1.38 (minimum version 1.24)
  Go version:       go1.10.3
  Git commit:       e68fc7a
  Built:            Tue Aug 21 17:36:40 2018
  OS/Arch:          windows/amd64
  Experimental:     false

1 Ответ

0 голосов
/ 06 сентября 2018

Просто удалите цитаты:

docker run stefanscherer/node-windows node -v

Это должно работать. В противном случае Windows пытается найти исполняемый файл с именем "node -v".

...