安装WSL2
使用 WSL 在 Windows 上安装 Linux,请参考:learn.microsoft.com/zh-cn/windo…
安装Docker
在安装 Docker 之前,需要卸载旧版本
for pkg in docker.io docker-doc docker-compose podman-docker containerd runc; do sudo apt-get remove $pkg; done
安装必要的一些系统工具
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg
添加 Docker 的官方 GPG 密钥
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
设置存储库
echo \
"deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
"$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
安装最新版docker
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
将当前用户加到docker组
sudo usermod -aG docker ${USER}
开启Docker服务
sudo service docker start
查看Docker的启动状态
sudo service docker status
Ubuntu22.04的新问题
新的ubuntu系统使用了iptables-nft,而WSL2不支持导致的,会导致Docker启动失败,使用iptables-legacy就可以正常启动了
sudo update-alternatives --config iptables
输入/usr/sbin/iptables-legacy的序号
1即可
配置国内镜像和远程访问
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://registry.docker-cn.com"],
"hosts": ["tcp://0.0.0.0:2375", "unix:///var/run/docker.sock"]
}
EOF