在Docker compose 的yml文件中,
有个参数叫工作目录,即:working_dir,
什么工作在“工作目录”进行?
百度了一下没找到很好的解释。
阿神2017-04-24 09:13:18
Linux の pwd コマンドをご存知ですか?現在のパスの絶対アドレスを表示するために使用されます。
完全なスペルを知っていれば、この問題は起こらないでしょう。
pwd の完全なスペルは「print working directory」です。
それでは、docker compose のこのパラメータについて説明しましょう。
質問を見る前は、docker compose に working_dir があることを知りませんでした。私の最初の考えは、上記の回答の 1 つと同じでした。WORKDIR の意味は、当然、現在のものを切り替えることです。ディレクトリを指定されたパスに移動します。
しかし、元の投稿者は正しかったので、compose ファイルは実際には docker run コマンド ライン設定の別の形式であるため、docker run にもこの属性がある可能性が高いと思いました。
docker run --help を試してみると、「-w, --workdir コンテナ内の作業ディレクトリ」パラメータがあることがわかります。
案の定、これは docker の実行時に作業パスを設定するために使用されるパラメーターです。次に、Compose でこの属性を検索し、Google で検索し、Docker の公式ドキュメントを見つけました。
案の定、compose ファイル内の設定は docker run の背後にあるパラメータに直接対応しており、ここには笑顔があるはずです。working_dir、entrypoint、user、hostname、domainname、mem_limit、privileged、restart、stdin_open、tty、cpu_shares これらはそれぞれ単一の値であり、対応する docker run に類似しています
高洛峰2017-04-24 09:13:18
形式はWORKDIR /path/to/workdirです。
後続の RUN、CMD、ENTRYPOINT 命令用に作業ディレクトリを構成します。
例:
WORKDIR /home/docker/
後で実行されるコマンドはデフォルトで /home/docker/ ディレクトリに置かれます
例: vim key.json
このファイルの実際のパスは /home/docker/key.json です