デフォルトのソースコードのマウントを変更する
devcontainer.json に image または dockerFile プロパティを追加すると、VS Code は現在のワークスペース フォルダを dev コンテナーに自動的に「バインド」マウントします。ホストの PATH に git が存在し、.devcontainer/devcontainer.json を含むフォルダが git リポジトリ内にある場合、マウントされる現在のワークスペースはリポジトリのルートになります。ホストの PATH に git が存在しない場合、マウントされる現在のワークスペースは .devcontainer/devcontainer.json を含むフォルダになります。
これは便利ですが、マウント設定を変更したり、マウントの種類や場所を変更したり、あるいはリモートの dev コンテナーで実行したりしたい場合があります。
devcontainer.json の workspaceMount プロパティを使用して、自動マウントの動作を変更できます。このプロパティには、Docker CLI の --mount フラグと同じ値を指定します。
例えば
"workspaceMount": "source=${localWorkspaceFolder}/sub-folder,target=/workspace,type=bind",
"workspaceFolder": "/workspace"
これにより、バインド マウントの代わりに名前付きボリューム マウントのような処理を行うこともできます。これは、特にリモートの Docker ホストを使用している場合や、ソースツリー全体をボリュームに格納したい場合に役立ちます。
すでにコンテナをビルドして接続している場合は、コマンドパレット (F1) から Dev Containers: Rebuild Container を実行して変更を反映させてください。それ以外の場合は、Dev Containers: Open Folder in Container... を実行してコンテナに接続してください。