一、安装wsl
#电脑将会自动安装wsl,并且默认安装一个ubuntu系统,(如果不想安装ubuntu可以在wsl安装完成后下载ubuntu的时候直接退出)
wsl --install
#可以查看wsl支持的linux系统,里面是没有centos7的,有的话可以wsl --install -d 版本
wsl --list --online
#查看已安装的系统
wsl --list -v
#删除已安装的Ubuntu
wsl --inregister Ubuntu
二、安装centos7
- 下载centos7
去github下载centos系统ZIP包,链接:https://github.com/wsldl-pg/CentWSL/releases
解压下载的文件(不要放C盘),得到“CentOS7.exe”和“rootfs.tar”两个文件。 - 安装centos7
右键以管理员身份运行“CentOS7.exe”,等待安装完成 - wsl
启动centos7
#查看已安装的系统
wsl -l
#启动CentOS7
wsl -d CentOS7
三、centos7yum源改到国内
安装wget
下载wget安装包https://mirrors.aliyun.com/centos/7/os/x86_64/Packages/wget-1.14-18.el7_6.1.x86_64.rpm
wsl中执行
explorer.exe .
可以在windows中打开当前目录,直接复制进去。也可以使用cp命令复制,c盘对应/mnt/c/。(centos7的文件都保存在ext4.vhdx虚拟硬盘文件中,需要通过以上方法查看)。
然后安装wget
rpm -i wget-1.14-18.el7_6.1.x86_64.rpm
使用wget下载aliyun的centos7的repo文件
cd /etc/yum.repos.d
mkdir bak
mv *.repo ./bak
rpm --import https://www.centos.org/keys/RPM-GPG-KEY-CentOS-7
wget http://mirrors.aliyun.com/repo/Centos-7.repo
# 清除系统所有的yum缓存
yum clean all
# 生成yum缓存
yum makecache
然后可以使用yum命令安装软件了
四、在centos7安装docker20
本来想yum安装的,看了下没找到20版本,就自己下载安装文件手动安装了。
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum list docker-ce --showduplicates | sort -r
wget http://mirrors.aliyun.com/docker-ce/linux/static/stable/x86_64/docker-20.10.24.tgz
tar -zxvf docker-20.10.24.tgz
mv docker/* /usr/local/bin/
#验证命令,查看版本
docker version
增加docker服务
sudo tee /etc/systemd/system/docker.service <<EOF
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network.target
[Service]
Type=simple
Restart=always
ExecStart=/usr/local/bin/dockerd
[Install]
WantedBy=multi-user.target
EOF
配置docker根目录data-root和国内加速镜像源registry-mirrors,注意选择磁盘空间大的位置。
sudo mkdir -p /data/docker
sudo tee /etc/docker/daemon.json <<EOF
{
"registry-mirrors": [
"https://docker.1ms.run",
"http://hub-mirror.c.163.com"
],
"data-root": "/data/docker"
}
重新加载并启动docker
systemctl daemon-reload
systemctl start docker
systemctl会报错Failed to get D-Bus connection: Operation not permitted。执行下面的命令即可解决
mv /usr/bin/systemctl /usr/bin/systemctl.old
curl https://raw.githubusercontent.com/gdraheim/docker-systemctl-replacement/master/files/docker/systemctl.py > /usr/bin/systemctl
chmod +x /usr/bin/systemctl
systemctl restart docker
然后再执行systemctl就没报错了。
拉取个镜像运行下看看
docker pull mysql:5.7
docker run -d --name mysql5.7 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7
试了下可以外部连接到该数据库, 可以方便的在本机使用docker快速部署环境了。
停止容器
docker stop mysql5.7
systemctl stop docker
参考
https://www.cnblogs.com/szdxm2004/p/18283930
https://blog.youkuaiyun.com/fdcp123/article/details/115180957
https://download.youkuaiyun.com/blog/column/11479674/140240330
https://blog.youkuaiyun.com/qq_43319748/article/details/135245925