docker-composeで共有ディスクの指定をして起動しようとするとエラー

【事象】
以下の記事を参考にdocker-composeでJupyter Labを起動させたい。
qiita.com

しかしながら、以下の様なエラーが発生してしまい、起動しない。
(一部ディレクトリ変更はしているが、その部分のエラーではない)

C:\dockerfile\JupyterLab>docker-compose up
Creating network "jupyterlab_default" with the default driver
Creating jupyterlab_jupyterlab_1 ... error

ERROR: for jupyterlab_jupyterlab_1  Cannot start service jupyterlab: error while mounting volume '/var/lib/docker/volumes/jupyterlab_jupyterlab-dir/_data': 
failed to mount local volume: mount C:\c\jupyterlab:/var/lib/docker/volumes/jupyterlab_jupyterlab-dir/_data, flags: 0x1000: no such file or directory

ERROR: for jupyterlab  Cannot start service jupyterlab: error while mounting volume '/var/lib/docker/volumes/jupyterlab_jupyterlab-dir/_data': 
failed to mount local volume: mount C:\c\jupyterlab:/var/lib/docker/volumes/jupyterlab_jupyterlab-dir/_data, flags: 0x1000: no such file or directory
ERROR: Encountered errors while bringing up the project.

【発生している環境】
・Windows10 pro
・WSL2
・Docker Desktop for Windows

【原因】
不明(調べきれなかった)

【対応方法】
パスを直接指定する事にした

[docker-compose.yml]

version: '3'
services:
  jupyterlab:
(中略)
    volumes:
#      - jupyterlab-dir:/home/JupyterLab/codes
       - c:\jupyterlab:/home/JupyterLab/codes
(以下略)

[共有ディスクとして設定した内容確認方法]

ボリューム一覧
docker volume ls
ボリューム詳細
docker volume inspect ボリューム名
ボリューム削除
docker volume rm ボリューム名

上記の例であれば、jupyterlab-dirというボリューム名が作成されているので、削除する。
なお、設定したボリュームの中身更新したい場合は、一度削除した方が良さげ。

【分からなかった事】
●volumesで動くマシンと動かないマシンの違い
実は直接パスを指定しなくても動く端末もあった。
しかし、別の端末では同じエラーが発生し続けた。
dockerのバージョンから始まり、色々見比べたが差異が見つけれなかった。。
オプション指定とか今はしたい訳でもないので、一旦忘れる。

●C:\c\jupyterlabとドライブレターが複数指定されている件
volumesでするとどうしてもドライブレターが二度表示され、c:\cフォルダが必要であった。
これも解決できておらず、動くマシンではc:\cフォルダを掘っていた。

●driver_optsの"type: none"と"o: bind"の意味
docker-composeのマニュアルや仕様には、その様な記載は見つけれなかった。
Compose ファイル・リファレンス — Docker-docs-ja 19.03 ドキュメント
github.com
しかし、Issueの対応に同じ記載を見つける事はでき、またどちらかを削ると動かなかった。
github.com

【その他】
●WSL2の場合は、Docker Desktop for WindowsにShared Drivesという設定は存在しない。
●Docker Desktop for Windowsをインストールしていても、docker-compose使うならあまり意味がない。
 コマンドを憶えるか、バッチファイルを作成して叩いて利用した方が良い。
 Docker Desktop for Windowsは起動・停止位の意味合いで利用すると割り切る。
●Anacondaを使わなかったのは、ライセンス問題があるし、ちょこっと集計する程度に使えればいい位なので。
qiita.com

改訂版 Pythonユーザのための Jupyter[実践]入門

改訂版 Pythonユーザのための Jupyter[実践]入門