背景
由于开发需要linux环境,于是windows系统下安装了ubuntu子系统,但是无法通过正常方式安装docker,于是有了如下操作

步骤
下面为大家详细介绍具体的操作步骤。

安装Docker
首先进入Ubuntu shell,更换Ubuntu官方源为国内源,加快下载速度。执行。

vim /etc/apt/sources.list
将内容替换为下方:

deb http://mirrors.aliyun.com/ubuntu/ focal main restricted
deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted
deb http://mirrors.aliyun.com/ubuntu/ focal universe
deb http://mirrors.aliyun.com/ubuntu/ focal-updates universe
deb http://mirrors.aliyun.com/ubuntu/ focal multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-updates multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted
deb http://mirrors.aliyun.com/ubuntu/ focal-security universe
deb http://mirrors.aliyun.com/ubuntu/ focal-security multiverse

接下来添加Docker源:
依次执行如下命令:

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

配置完成软件源之后下一步是安装Docker,命令如下:

sudo apt install -y docker-ce

最后一个步骤,启动Docker daemon。但是此处有一个问题,WSL2经过测试无法使用systemctl命令(此问题已经解决,参见博客末尾FAQ),因此我们使用service命令启动Docker daemon。命令如下所示:

sudo service docker start

至此,Docker 在WSL2下安装完毕。

注:WSL2 Docker最爽的地方是和宿主机Win10共享network,我们在宿主机Win10使用localhost加端口号就可以访问Docker中对应container中的服务,十分方便。