2017-12-14 6 views
4

私はドッカーと初心者です。ちょうどそれを学び始めました。 エクスプレスで単純なノードアプリケーションを実行しようとしていますが、 :Docker:デーモンからのエラー応答:OCIランタイムの作成に失敗しました:container_linux.go:296:

enter image description here

はここに私の作業ディレクトリです:

enter image description here

私はに私の現在のソースコードのディレクトリをマウントするには、次のコマンドを実行しましたノードコンテナ内のを実行し、ノードnpmを起動してアプリケーションを起動します。 は、私は上記のエラーを取得していない何をすべきかを確認します。

docker run -p 8085:3000 -v /home/joel/workspace/plural_docker_webdev:/var/www node -w "/var/www" node npm start 

そして、私はこのエラーを取得する:

docker: Error response from daemon: OCI runtime create failed: container_linux.go:296: starting container process caused "exec: \"-w\": executable file not found in $PATH": unknown. 
ERRO[0000] error waiting for container: context canceled 

答えて

1

ドッカーは、コマンドがエラーを打つことを語っています。 コマンド-wnodeイメージを実行しようとしています。 -wはコマンドではないため、このエラーがスローされます。

これは、おそらく意味がない場所にnodeと書かれているためです。

あなたのコマンドは次のように解釈されている:

docker run -p [port_info] -v [volume_info] node [command] 

あなたがそうのようなあなたのコマンドを書き換えることができ、それが正常に動作する必要があります:

docker run -p 8085:3000 -v /home/joel/workspace/plural_docker_webdev:/var/www -w "/var/www" node npm start 
+0

おかげでライアンが、ことを私が持っている同じコマンドではありません私の質問では。あなたと私とはどう違うのですか?どこで私は間違いをしていますか? – pelican

+0

ノードを2回書きました。文字78に1度、文字97にもう一度。最初の文字を削除します。 –

+0

最初のノードはイメージ名であり、2番目のノードはドッカーが実行するコマンドで、ノードnpm startです。私の問題はボリュームのマウントであり、nodeはpackage.jsonファイルを見つけることができませんでした。ディレクトリが上がっているので、私は同じコマンドを実行しましたが、/ Express_website /を追加するとpackage.jsonへのフルパスが与えられました。 docker run -p 8085:3000 -v/home/joel/workspace/plural_docker_webdev/Express_website /:/ var/www -w/var/www npm start ボリュームマウントに注意してくださいありがとうございましたRyan – pelican

関連する問題