Ho battuto la testa contro il muro su questo per un po 'e ho bisogno di un piccolo aiuto.L'avvio di un contenitore finestra mobile con un'app node.js produce un errore; si lamenta del PERCORSO
Ho un contenitore finestra mobile creato da un file Docker. Quando cerco di eseguire tale contenitore (in modo interattivo [-i] o indipendente [-d]), produce il seguente errore:
2014/06/04 21:17:40 exec: "node": executable file not found in $PATH
Questo è il modo che sto cercando di avviare il contenitore (fatta generico per motivi di sicurezza):
sudo docker run -i -t -p port:port containername:containerversion node /path/to/node/app/nodeapp.js
ciò che è fastidioso e confuso è che quando faccio funzionare il contenitore senza che il comando aggiunto, sono in grado di cd nella directory/path/to/node/app ed eseguire:
node nodeapp.js
Questo funziona bene per me. Inoltre, quando paragono i contenuti del comando "quale nodo" e l'output di "echo $ PATH", vedo che tutto è kosher. Quindi, perché diamine si rifiuta di riconoscere che io sono il suo padrone e che dovrebbe fare ciò che dico?
ne dite di usare il percorso assoluto del file eseguibile nodo del run docker? –
Poiché esegue le attività nel file Docker come root, ho dovuto aggiungere ENV PATH al Dockerfile con lo stesso percorso dell'utente che alla fine avrei eseguito il contenitore come. – Jacob