关于在wsl上安装Docker方法整理

某刚接触到Docker,windows刚好是专业版,便尝试在wsl上安装Docker
这里总结了一下我认为比较舒服的安装方法
但是由于能力有限,并没有配图
这个步骤我并没有在进行一遍,若有问题,请指出以便改正

参考来源

清华大学开源软件镜像站 Docker Community Edition 镜像使用帮助
在Linux的Windows子系统上(WSL)使用Docker(Ubuntu)
搭建 Docker 环境 - 开发者实验室 - 腾讯云
腾讯云安装docker服务及镜像加速配置 - Ubuntu
Windows10上使用Linux子系统(WSL)

Debian/Ubuntu 用户

如果你过去安装过 docker,先删掉:

sudo apt-get remove docker docker-engine docker.io

首先安装依赖:

sudo apt-get install apt-transport-https ca-certificates curl gnupg2 software-properties-common

以下内容只列出Ubuntu的步骤,Debian系统只需要将其中的ubuntu换为debian即可:
信任 Docker 的 GPG 公钥:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

对于 amd64 架构的计算机,添加软件仓库:

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

如果你是树莓派或其它ARM架构计算机,请运行:

echo "deb [arch=armhf] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu \
     $(lsb_release -cs) stable" | \
    sudo tee /etc/apt/sources.list.d/docker.list

最后安装

sudo apt-get update
sudo apt-get install docker-ce

Fedora/CentOS/RHEL 用户

如果你过去安装过 docker,先删掉:

sudo yum remove docker docker-common docker-selinux docker-engine

首先安装依赖:

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

以下内容只列出CentOS/RHEL的步骤,Fedora系统只需要将其中的centos换为fedora即可:
下载repo文件

wget -O /etc/yum.repos.d/docker-ce.repo https://download.docker.com/linux/centos/docker-ce.repo

把软件仓库地址替换为 TUNA:

sudo sed -i 's+download.docker.com+mirrors.tuna.tsinghua.edu.cn/docker-ce+' /etc/yum.repos.d/docker-ce.repo

最后安装

sudo yum makecache fast
sudo yum install docker-ce

若觉得上面步骤麻烦可使用阿里的一键安装脚本

curl -sSL http://acs-public-mirror.oss-cn-hangzhou.aliyuncs.com/docker-engine/internet | sh -

将默认用户加入docker组(据说可以不用root权限

sudo usermod -aG docker user

也可使用以下命令使用腾讯云提供的国内镜像源

echo "OPTIONS='--registry-mirror=https://mirror.ccs.tencentyun.com'" >> /etc/sysconfig/docker
systemctl daemon-reload
service docker restart

进行配置

前提

安装Docker for Windows

安装WSL

后面Docker for windows可能会运行出错,按照软件的指示,修复重启即可,但本人出现了与VMware软件功能冲突的情况

配置

Docker for windows安装完成之后
右键打开settings->General->勾选第四项公开没有TLS的守护进程
然后在wsl输入

export DOCKER_HOST=tcp://127.0.0.1:2375

但是,该环境变量只会持续到会话结束。每次打开bash时都必须重新设置它。因此再执行以下命令

vi ~/.bashrc

打开这个文件,在结尾处添加

export DOCKER HOST=tcp://0.0.0.0:2375

保存后重启bash控制台就好了

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐