使用Docker桌面版来运行Docker命令的方法

#
# 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时会有两个操作系统。

安装 Docker Desktop WSL 2 将会安装两个操作系统,分别是 docker-desktop 和 docker-desktop-data。

PS > wsl -l -v
  NAME                   STATE           VERSION
* docker-desktop         Running         2
  docker-desktop-data    Running         2
PS >

我不太理解詳細的角色在下文中有詳細描述。

    Introducing the Docker Desktop WSL 2 Backend – docker blog

docker-desktop 是什么东西?

在运行Docker守护程序的操作系统。推测是基于Alpine Linux的发行版。这个推测是通过apk命令得出的。

Docker 容器主要是在这里进行管理的。

大概是这样的动作吧,我理解的内容是以下的:

    Docker Desktop WSL 2 を docker-desktop から動かす方法につきまして – teratail

〇 “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 >
    WSL2 where is docker volume location? #4176 – microsoft/WSL

VSCode 的设置

追加说明:当VS Code Server更新时,无法启动VSCode。详细信息已在下方补充。

只要通過docker-desktop,VSCode可以運行。雖然不知道它的具體機制。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"

在登录时,首先应用 /etc/profile 的设置,
接着应用每个用户的目录中的 .profile 文件(即,~/.profile)哦!
Shell 的配置文件(sh, bash) – suu-g 的日记

追加说明

当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
$

我认为这可能是原因所在,但我无法解决。

    Unable to download vscode server from WSL #79

如果想要使用VSCode,我們目前是從Ubuntu啟動。在這種情況下,環境變數如下所示。

export DOCKER_HOST="tcp://0.0.0.0:2375"
bannerAds