誰か、Windows 10 で Docker イメージを実行する方法を教えてもらえますか? チュートリアルを読むように言わないでください。質問するのには理由があります。
Windows 用の docker はすでにインストールされています。すべてのチュートリアルには、「docker quickstar ターミナルを使用する」と書かれています。しかし、そのようなものは存在しません。あるのは docker デスクトップだけです。
Git bashやWindowsターミナル(コマンドプロンプト)など、どのターミナルでも「docker ps」を実行できます。しかし、これを実行したいのです
docker run -it -p 4567:4567 -v 'pwd':/work udacity/controls_kit:latest
Git bash でこれを実行すると、次のエラーが発生しました。
the input device is not a TTY. If you are using mintty, try prefixing the command with 'winpty'
これをコマンドプロンプトで実行すると
docker: Error response from daemon: create 'pwd': "'pwd'" includes invalid characters for a local volume name, only "[a-zA-Z0-9][a-zA-Z0-9_.-]" are allowed. If you intended to pass a host directory, use absolute path.
See 'docker run --help'.
Windows 10 でコンテナ イメージを実行する正しい方法は何ですか?
答え1
とても近いです!
コマンドを評価しpwd
、その結果をDocker呼び出しの一部として使用しようとしています。バックティックシンボル(重々しいアクセントTab)。US キーボードでは、 の上、 の隣にある ボタンで入力できます1。現在、通常の文字列を引用するために使用される一重引用符を (誤って) 使用しています。
$(pwd)
理想的には、ではなくを使用する必要があります`pwd`
。 同じことを行いますが、ネストされている場合は予測しやすくなり、他のものと混同されにくくなります。
# should work:
winpty docker run -it -p 4567:4567 -v `pwd`:/work udacity/controls_kit:latest
# even better:
winpty docker run -it -p 4567:4567 -v $(pwd):/work udacity/controls_kit:latest
Windows 上で Docker をデフォルト設定で実行するには、プレフィックスが必要ですwinpty
。インストール中にこの動作を変更できます。Windows 10 では、改善されたコマンド ラインにはこの機能が克服しようとしている制限がないため、プレフィックスを変更することはおそらく良い考えです。