在Ubuntu 18.04.2 LTS上运行docker

时间:2019-07-30 21:35:26

标签: linux docker ubuntu unix windows-subsystem-for-linux

Microsoft blog宣布,WSL2现在支持docker。我正在尝试在Windows10的Linux子系统上安装docker。遵循此official documentation中提到的所有步骤后,我得到以下错误。

$docker ps
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
$ docker version
Client: Docker Engine - Community
 Version:           19.03.1
 API version:       1.40
 Go version:        go1.12.5
 Git commit:        74b1e89
 Built:             Thu Jul 25 21:21:05 2019
 OS/Arch:           linux/amd64
 Experimental:      false
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

我在这里错过了什么吗?

3 个答案:

答案 0 :(得分:1)

您不能在WSL内运行docker守护程序,这意味着您不能在WSL内托管容器。但是您可以使用WSL内部运行的Docker客户端连接到Windows上运行的守护程序。

首先,您需要获取Windows https://docs.docker.com/docker-for-windows/install/的docker桌面

完成此操作后,请确保打开用于在不使用TLS的tcp:// localhost:2375上公开守护程序的设置。

然后在WSL中安装Docker

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo apt-get update
sudo apt-get install docker-ce

并设置env变量,以便所有docker命令进入Windows中公开的守护程序

export DOCKER_HOST=tcp://localhost:2375

您现在可以在WSL中享受docker命令了:-)

答案 1 :(得分:1)

Docker is now supported on WSL2

在WSL2上成功运行docker的前提条件

  1. Windows 10(内部版本18932或更高版本)。检查操作系统内部版本Win-Key + R, run command "winver"
  2. 您可以通过注册windows insider program来获取Build#18932,然后检查计算机上的最新Windows更新
  3. Enable WSL on your machine( Windows10 ),然后在Powershell命令上使用admin运行wsl --set-default-version 2,以始终在您的计算机上使用WSL2

现在,您可以在计算机上安装Linux发行版了。 Install Ubuntu on Windows 10 WSL使用这些说明

您需要使用sudo /etc/init.d/docker start显式启动Docker

要在安装后确认一切正常;在Powershell上运行以下命令。如果显示以下输出,则表示Ubuntu-18.04在WSL 2上运行

PS> wsl -l -v
 NAME            STATE           VERSION
* Ubuntu-18.04    Running         2

-参考:microsoft/wsl on Github

答案 2 :(得分:1)

要使wsl2与docker一起使用,您仍然需要做一些调整和步骤

如果您想了解有关如何使其工作的更多信息,请查看https://codingfullstack.com/cloud/docker-installation-wsl2/