アイデアの甕

アイデアを放り込んでおくと甕は腐臭を発しない

当サイトではアフィリエイトプログラムを利用して商品を紹介しています。

【解決】PowerShell上のdocker runで-vオプションが利かなくなった【for Windows 2.3.0.2】

Docker-1

Docker for Windowsを更新。2020-05-11に公開されたDocker Desktop Community 2.3.0.2。

docs.docker.com

どうやらWindows 10 Proだけでなく、Windows 10 Homeでも導入可能になったとかでそれなりに大きなアップデートみたいです。

マウントされないボリューム

アップデート(新規インストール&旧版アンインストール?)は無事終了し、いつも通り「docker run」してみる。

動く。

ただ、いつものコマンドが通らない。

調べてみると、「-v」オプションで指定したvolumeがマウントされずホスト・コンテナ間でのファイルのやり取りができていない。

解決策

普段「docker run」コマンドは直打ちしておらず、PowerShell用のps1ファイルを読み込む形で実行していたのですが、その一部にこのような記載がありました。

-v ~/path/to/file:/file/to/path

ユーザーのホームディレクトリを示す「~」による記述。

どうやらこの記述が(PowerShellを介した「docker run」では)機能しないようになったらしく、フルパスで書けば確かにマウントされることを確認。さらに環境変数?を使用して以下のように書き換え。

-v $HOME/path/to/file:/file/to/path

この書き換えにより、アップロード前の挙動が再現されました(ただし体感では立ち上がりが数秒遅くなっているような…?)。