【Docker】Linux与Windows系统安装Docker
一、Windows安装Docker
由于我在许多平台搜索Windows下安装Docker的方法,都提到了Win10家庭版无法直接安装Docker。个人电脑就是Win10家庭版,本着实践出真知的想法,个人在本机Win10家庭版实验结果为需要采用下述传统手动安装的办法;同时,在自己Vmware虚拟机上安装了Win10专业版进行演示命令行自动安装步骤。
1.1 更新Windows10系统
如果是Win11系统可以跳过更新步骤。Win10选择更新系统至1903或更高版本,如果版本低于1903,可使用 Windows 10 易升工具手动升级。下载 Windows 10 易升工具(https://www.microsoft.com/zh-cn/software-download/windows10)。查看本机Windows版本,可在CMD(命令提示符)窗口或者Powershell窗口输入:winver 进行查看。
1.2打开Powershell输入指令进行安装
1.2 WSL的两种安装方法
俩种方法选择其中一种即可,微软官方文档:Microsoft WSL文档,其中Win11和Win10的windows10版本2004(内部版本19041或更高)推荐方法二:命令行自动安装。
1.3.1方法一:传统手动安装
运行如下指令启用适用于Linux的Windwos子系统
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
运行如下指令启用启用“虚拟机平台”可选功能
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
下载Linux内核更新包
下载前尽量重启一下电脑,下载地址https://learn.microsoft.com/zh-cn/windows/wsl/install-manual#step-4%E2%80%94download-the-linux-kernel-update-package。具体下载类型请看官方文档,根据自己电脑类型进行选择。
双击wsl_update_x64.msl文件运行即可。
将WSL2设置为默认版本
打开 PowerShell,然后在安装新的 Linux 发行版时运行以下命令,将 WSL 2 设置为默认版本:
wsl --set-default-version 2
下载/安装 Linux 分发版
打开Windows系统自带的Microsoft Store。如果出现无法加载页面等情况,参考Microsoft Store 无法加载页面。应该是不需要用到科学上网。
搜索栏输入Ubuntu或者直接点击下方链接进行加载
- Ubuntu 18.04 LTS
- Ubuntu 20.04 LTS
- Ubuntu 22.04 LTS
- openSUSE Leap 15.1
- SUSE Linux Enterprise Server 12 SP5
- SUSE Linux Enterprise Server 15 SP1
- Kali Linux
- Debian GNU/Linux
- Fedora Remix for WSL
- Pengwin
- Pengwin Enterprise
- Alpine WSL
- Raft(免费试用版)
- Alma Linux
点击获取后就自动下载并安装了
如果不想使用自己电脑上的Microsoft Store,可以选择官网提供的几个版本,点击链接应该就直接下载了:
- Ubuntu
- Ubuntu 24.04
- Ubuntu 22.04 LTS
- Ubuntu 20.04
- Ubuntu 20.04 ARM
- Ubuntu 18.04
- Ubuntu 18.04 ARM
- Ubuntu 16.04
- Debian GNU/Linux
- Kali Linux
- SUSE Linux Enterprise Server 12
- SUSE Linux Enterprise Server 15 SP2
- SUSE Linux Enterprise Server 15 SP3
- openSUSE Tumbleweed
- openSUSE Leap 15.3
- openSUSE Leap 15.2
- Oracle Linux 8.5
- Oracle Linux 7.9
- Fedora Remix for WSL
Microsoft Store 无法加载页面
按“Win+R”键,在运行窗口中,键入 WSReset.exe并点击“ 确定 ”
以管理员方式打开Powershell,依次执行如下两个指令:
# 1.删除、卸载当前Microsoft Store
get-appxpackage *store* | remove-Appxpackage
# 2.添加、安装Microsoft Store
add-appxpackage -register "C:Program FilesWindowsApps*Store*AppxManifest.xml" -disabledevelopmentmode
如果依旧无法打开,重启下电脑,我是重启完之后才可以正常使用的。
运行刚安装的WSL
设置虚拟机的新用户名和密码(与之后安装Docker无关),注意!输入密码时,控制台上不会有任何反应,大胆去输入就好了。
1.3.2 方法二:命令行自动安装
运行如下指令启用适用于Linux的Windwos子系统
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
运行如下指令启用启用“虚拟机平台”可选功能
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
建议此时重启一下电脑
powershell中输入指令
对于windows10版本2004版本及更新版本或者windows11,可以直接一行命令符安装
# 很多网站上都说在powershell中输入这个指令就能自动安装
wsl --install
# 实际上,我自己实验成功的是输入如下指令成功的
wsl --install -d <DistroName>
# 是自己指定的WSL虚拟机系统,示例:
wsl --install -d Ubuntu
执行完指令后需要略微等待十几秒后才会有反应,然后安装Ubuntu也需要等待。
1.4 安装Docker Desktop
根据自己Windows版本选择下方对应版本,参考文档Docker Desktop for Windows
可以访问参考文档去下载,也可以直接复制下方圆括号内链接下载(本机markdown下能够正常显示,CSDN上不懂怎么就错误了)
[Docker Desktop for Windows - x86_64](https://desktop.docker.com/win/main/amd64/Docker Desktop Installer.exe?utm_source=docker&utm_medium=webreferral&utm_campaign=docs-driven-download-win-amd64&_gl=11vzs4as_gcl_auMzE1MjQxMTgzLjE3MzIwMjQxNzE._gaNDY4ODQyNjcxLjE3MzIwMjQxNzI._ga_XJWPQMJYHQ*MTczMzExMzcxNi41LjEuMTczMzExMzkzMC40Ni4wLjA.)
[Docker Desktop for Windows - Arm Beta](https://desktop.docker.com/win/main/arm64/Docker Desktop Installer.exe?utm_source=docker&utm_medium=webreferral&utm_campaign=docs-driven-download-win-arm64)
下载完之后双击运行,点击OK(如果有关于WSL2的选项建议勾选,没有的不用管)
安装完之后,会有个 log out 的按钮,确保你当前电脑其他文件都已经保存完毕,并自己手动关掉,因为你点击log out 之后,电脑会立刻重启。
1.5 运行Docker
双击图标运行,选择接受协议(Accept)。
先跳过登录,也可以跳过调查问卷。
1.6 配置Docker镜像源
1.6.1使用docker desktop配置
在里面添加一行,格式为如下,不知道如何获取自己阿里云镜像URL的,去查看配置镜像加速,也可以直接使用下方镜像。
"registry-mirrors": [
"https://docker.linkedbus.com",
"https://docker.xuanyuan.me",
"https://docker.hpcloud.cloud",
"https://docker.m.daocloud.io",
"https://docker.unsee.tech",
"https://docker.1panel.live",
"http://mirrors.ustc.edu.cn",
"https://docker.chenby.cn",
"http://mirror.azure.cn",
"https://dockerpull.org",
"https://dockerhub.icu",
"https://hub.rat.dev",
"http://hub-mirror.c.163.com",
"http://hub-mirror.c.163.com",
"https://registry.docker-cn.com"
]
1.6.2 修改配置文件配置
进入 C:Users[自己用户名].docker
目录下,打开 daemon.json
文件
在文件中添加字段内容,若已存在"registry-mirrors",则继续添加其他镜像。其他字段如无特殊需要,请保持不变。
"registry-mirrors": [
"https://docker.linkedbus.com",
"https://docker.xuanyuan.me",
"https://docker.hpcloud.cloud",
"https://docker.m.daocloud.io",
"https://docker.unsee.tech",
"https://docker.1panel.live",
"http://mirrors.ustc.edu.cn",
"https://docker.chenby.cn",
"http://mirror.azure.cn",
"https://dockerpull.org",
"https://dockerhub.icu",
"https://hub.rat.dev",
"http://hub-mirror.c.163.com",
"http://hub-mirror.c.163.com",
"https://registry.docker-cn.com"
]
保存并关闭文件,随后将docker desktop手动重启一下。
1.7 docker校验
打开powershell,终端中输入如下指令
# 显示版本信息
docker --version
# 显示当前docker本地镜像
docker images
# 运行第一个helloworld镜像,测试使用,可以不执行
docker run hello-world
# 显示运行中的容器
docker ps
二、CentOS7安装Docker
Docker官方文档
2.0配置yum进行软件安装
如果之前已经给yum换过国内镜像的可以跳过,我最终用的是方法二,方法一里提供的镜像好像也有东西下不了。
yum换源方案一
# 不会vim的也可以使用gedit,更新YUM仓库源为阿里云镜像源:
sudo vim /etc/yum.repos.d/CentOS-Base.repo
将文件中内容换成如下:
[base]
name=CentOS-$releasever - Base - mirrors.aliyun.com
baseurl=http://mirrors.aliyun.com/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
[updates]
name=CentOS-$releasever - Updates - mirrors.aliyun.com
baseurl=http://mirrors.aliyun.com/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
[extras]
name=CentOS-$releasever - Extras - mirrors.aliyun.com
baseurl=http://mirrors.aliyun.com/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
[centosplus]
name=CentOS-$releasever - Plus - mirrors.aliyun.com
baseurl=http://mirrors.aliyun.com/centos/$releasever/centosplus/$basearch/
gpgcheck=1
enabled=0
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
清理并重建缓存
sudo yum clean all
sudo yum makecache
sudo yum update
yum换源方法二
# 先安装wget
yum -y install wget
# 使用阿里云镜像
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
清理并重建缓存
sudo yum clean all
sudo yum makecache
sudo yum update
2.1卸载旧版本:
sudo yum remove docker
docker-client
docker-client-latest
docker-common
docker-latest
docker-latest-logrotate
docker-logrotate
docker-engine
2.2配置Docker的yum库
首先安装对应的yum工具
yum install -y yum-utils
安装成功后,配置Docker的yum源
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
2.3安装docker
sudo yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
2.4查看版本
docker -v
2.5启动docker
# 设置开机自启
sudo systemctl enable --now docker
# 启动docker
systemctl start docker
2.6校验
# 需要root权限
sudo docker images
2.7 配置镜像加速
此处以阿里云为例,其他云也可以
2.7.1登录阿里云
https://www.aliyun.com
2.7.2开启容器镜像服务ACR
如果是第一次,直接开通即可,免费!
点击镜像工具->镜像加速器
按照阿里云的操作文档进行
# registry-mirrors 可以换成自己的镜像地址 当然我获取的阿里镜像似乎有问题 所以换成了下方这两个
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": [
"https://docker.linkedbus.com",
"https://docker.xuanyuan.me",
"https://docker.hpcloud.cloud",
"https://docker.m.daocloud.io",
"https://docker.unsee.tech",
"https://docker.1panel.live",
"http://mirrors.ustc.edu.cn",
"https://docker.chenby.cn",
"http://mirror.azure.cn",
"https://dockerpull.org",
"https://dockerhub.icu",
"https://hub.rat.dev",
"http://hub-mirror.c.163.com",
"http://hub-mirror.c.163.com",
"https://registry.docker-cn.com"
]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker