wsl安装docker(规避Docker desktop收费)
前言
笔者在公司给配的Windows电脑中安装了docker desktop,几天后收到了公司IT的邮件告知,该软件需要收费。
笔者很疑惑,后面查了下Docker desktop确实收费,而且收费政策仅限于企业内Windows端,也就是普通用户都是不收费的,并且Linux端和mac端也是不收费的
笔者去查阅了下,有以下几种办法可以解决:
- 缴费使用Docker desktop,每年收费 2083元/个/年;暂时pass
- 换用mac,笔者有mac,但是mac现在基本上都是arm处理器,很多比较新的开源工具,暂时都不提供arm镜像,所以也pass
- 换用Linux。笔者只有Windows和mac,没有纯Linux的电脑。但是Windows有子系统Linux,可以考虑。
最终笔者还是决定尝试下Windows的子系统安装docker
安装步骤
安装wsl 一般直接去微软商店安装,参考微软这篇官方文档即可 如何使用 WSL 在 Windows 上安装 Linux
安装docker
首先更新下系统
1
2
sudo apt-get update
sudo apt-get upgrade
展开
然后安装依赖
1
2
3
4
5
sudo apt-get install \
ca-certificates \
curl \
gnupg \
lsb-release
展开
再添加 Docker 的官方 GPG 密钥:
1
2
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
展开
设置仓库
1
2
3
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
展开
安装Docker Engine:
1
2
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin
展开
安装成功后,记得测试下能不能使用
启动 Docker:
1
sudo service docker start
展开
验证 Docker 安装:
1
sudo docker run hello-world
展开
为了避免每次都用 sudo 运行 Docker,可以将你的用户添加到 docker 组(第二个命令会退出wsl,重新打开就生效了):
1
2
sudo usermod -aG docker $USER
newgrp docker
展开
性能问题
笔者发现wsl确实可以很完美的运行docker,但是还是担心有性能问题,笔者搜索并多次使用后,发现wsl并不会存在性能问题:
是否会占用cpu过高 并不会,wsl本身优化的非常好,占用极低的Windows系统资源就可以运行一个相对完整的Linux系统
是否会占用ram过高 也不会,本身wsl仅占用百十兆内存,整整吃内存的是docker中那些镜像,和这些相比,wsl本身占用的内存根本不值一提
运行docker时性能是否受限? 并没有,笔者尝试过,甚至wsl中性能更好,占用cpu和内存反而更低。本身docker也是从Linux中来,支持Windows更像是兼容。
本文由作者按照 CC BY 4.0 进行授权