Win11上折腾Docker
创建日期:2024年7月29日

这两天有个项目需要用到Python,虽然之前Ventoy创建了用来测试的差分系统,但是用Win系统跑项目还是有点难搞的。而Win10 LTSC 1903版本对于Dokcer的支持让人一言难尽,确实,19年的LTSC已经是五年前的老伙计了。
联想到之前折腾过的Win11 Docker,虽然不能稳定的用在老电脑上,但也算是个“半成品”了。尝试了两个方案,无论哪种方案,我都是用Ventoy Win11 WTG差分系统玩的。既然WTG差分系统都能玩,实体安装的Win11想来也不会有什么问题。感兴趣的话可以试试,记得做好数据备份。
安装WSL Ubuntu
两种方案都是基于WSL的,所以首先就是要安装WSL。安装WSL Ubuntu的过程请严格按照一下流程,经测试,WSL并不稳定,操作顺序错乱会导致安装失败。
正常安装完Win11系统后,别的都无所谓,一定不要禁用更新。因为11的商店是依赖于更新服务的,而等会要安装的WSL Linux是依赖商店的。
打开相关程序和功能
检查一下控制面板的“程序和功能”中对应的功能,如图几个功能打上勾。


勾选后确定,等待进度完成,按照提示重启电脑。

然后安装WSL核心,下载链接放这里了, 适用于 x64 计算机的 WSL2 Linux 内核更新包。

运行WSL安装命令
打开终端先运行一下wsl,会提示“适用于 Linux 的 Windows 子系统没有已安装的分发版”。

接下来运行wsl --insatll,会出现好些个Linux版本,可以按照自己喜好安装,把名称替换到安装命令中。这里我安装默认的Ubuntu,执行wsl --install -d ubuntu。


等待进度条跑满就行了,然后会自动弹出另一个命令行窗口,按照提示设置好username和password就可以关掉窗口了。


最后再执行一次wsl --update,等待执行结束。

至此WSL Ubuntu就算安装好了,关掉窗口也不会对Ubuntu有什么影响。想要完全停止WSL Linux的话需要运行wsl --shutdown,下次启动可以从开始菜单或者终端里直接启动都行。
方案一
直接去Docker官网https://www.docker.com/ 下载“Docker Desktop for Windows”,然后安装,安装过程比较慢,耐心等待。


安装完根据提示注销,重新进入桌面后,会自动运行Docker。


先跳过登录,跳过选择。


至此Docker Desktop安装结束。如果不习惯Docker的英文界面,可以去github下载中文语言包,替换C:\Program Files\Docker\Docker\frontend\resources(默认安装路径)的app.asar文件即可。项目地址https://github.com/asxez/DockerDesktop-CN。



方案二
启动Ubuntu系统,首先执行sudo apt update,输入之前设置的密码,等待命令结束。

安装一些必要的依赖包,执行sudo apt install apt-transport-https ca-certificates curl gnupg lsb-release,会有一个询问,输入y回车。

添加Docker的官方GPG密钥,确保软件包的安全性和完整性,执行curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg,不会有提示。
添加Docker的官方仓库到包管理器配置中,执行echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null,也不会有提示。

再次更新包列表以包括Docker的官方仓库,执行sudo apt update。

安装Docker CE及其相关组件,执行sudo apt install docker-ce docker-ce-cli containerd.io,会有一次确认询问,输入y回车,等待代码执行结束。

执行docker run -d --restart=always --name="portainer" -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock 6053537/portainer-ce安装Portainer中文版。


等待执行完成后,打开浏览器输入 http://localhost:9000 就可以进入到Portainer管理界面,至此Docker安装结束。
