#
# Windows - Docker daemon 側の設定
#
以下の項目にチェックを入れる
Docker Desktop > Settings > General > Expose daemon on tcp://localhost:2375 without TLS
#
# docker-desktop - Docker CLI 側の設定
#
apk add docker
export DOCKER_HOST=unix:///run/guest-services/docker.sock
PowerShell に不慣れな場合、便利かなと思います。
WSL 2 にインストールされる2つの OS
Docker Desktop WSL 2 をインストールすると 2 つの OS がインストールされる。docker-desktop
と docker-desktop-data
です。
PS > wsl -l -v
NAME STATE VERSION
* docker-desktop Running 2
docker-desktop-data Running 2
PS >
詳細な役割については、以下の記事に書かれているがよくわからない。
〇 docker-desktop ってなんだ?
Docker daemon が動くOS。ディストリビューションは Alpine Linux っぽい。これは apk コマンドから推定しています。
Docker のコンテナは、こっちで主に管理している様子です。
たぶんそういう動作なんだろうなという理解をしています。確認した内容は、以下の通りです。
〇 docker-desktop-data ってなんだ?
Docker のボリュームは、こっちで主に管理する様子です。
dir \\wsl$\docker-desktop-data\mnt\wsl\docker-desktop-data\data\docker\volumes
PS > dir \\wsl$\docker-desktop-data\mnt\wsl\docker-desktop-data\data\docker\volumes
Directory: \\wsl$\docker-desktop-data\mnt\wsl\docker-desktop-data\data\docker\volumes
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 3/22/2020 8:56 PM fa5249be4b61730d27df1da8b71b190c06f4c2c4b13378542ceeefae38ab4b54
d----- 3/22/2020 4:06 PM 056cfbf651b419ba8f37f02bf32da6e082a93f9fd4e63690532582cbca56c61d
d----- 3/22/2020 8:37 PM 自分が作成したボリュームがココにありました。
------ 3/22/2020 8:57 PM 32768 metadata.db
PS >
VSCode の設定
追記: VS Code Server のアップデートが走ると VSCode が起動できなくなりました。詳細は下部に追記しています。
VSCode が docker-desktop から実行が可能です。どういう仕組みかはわからないのですが。WSL 2 凄すぎる...
/mnt/host/c/Users/ユーザ名/AppData/Local/Programs/Microsoft\ VS\ Code/bin/code .
まとめ
~/.profile
に次のようなものを設定しておけばいいかなと...
export DOCKER_HOST=unix:///run/guest-services/docker.sock
alias code="/mnt/host/c/Users/ユーザ名/AppData/Local/Programs/Microsoft\ VS\ Code/bin/code"
sh の設定は、ログイン時にまず /etc/profile が適用され、
続いて各ユーザのディレクトリの .profile (つまり、~/.profile)が適用されるよ!
シェルの設定ファイル ( sh, bash ) - suu-g's diary
追記
VS Code Server のアップデートが走ると VSCode が起動できなくなりました。
$ code .
Updating VS Code Server to version fe22a9645b44368865c0ba92e2fb881ff1afce94
... 中略
Failed
Connecting to update.code.visualstudio.com (104.42.78.153:443)
wget: bad address 'az764295.vo.msecnd.net'
ERROR: Failed to download https://update.code.visualstudio.com/commit:fe22a9645b44368865c0ba92e2fb881ff1afce94/server-li
nux-x64/stable to /root/.vscode-server/bin/fe22a9645b44368865c0ba92e2fb881ff1afce94-1584858587.tar.gz
$
このあたりが原因かなと思っているのですが、解決できないでいます。
現状 VSCode を触りたい場合は Ubuntu から起動しています。その際の環境変数は、以下の通りです。
export DOCKER_HOST="tcp://0.0.0.0:2375"