本文介绍windows系统,安装wsl虚拟机(ubuntu),并在ubruntu中配置连接私有harbor及阿里云镜像等。
在确定该方式前,博主也曾尝试过通过安装Docker Desktop的方式,但每次重启电脑之后,docker桌面端都有可能启动失败,所以放弃该方式。
因为博主习惯于使用linux命令,所以后面的打包镜像、推送harbor等操作均在Ununtu中进行。实际上,还可以在idea中配置docker地址,进行上述操作。
一、系列博客目录
(一)环境准备(本文)
(二)Elasticsearch,IK分词器,Kibana
KubeSphere部署:(二)Elasticsearch,IK分词器,Kibana-CSDN博客
(三)MySQL安装
KubeSphere部署:(三)MySQL安装-CSDN博客
(四)zooKeeper安装(待更新)
(五)Redis安装(待更新)
(六)业务服务-前端安装(待更新)
(七)业务服务-后端安装(待更新)
(八)使用Jenkins搭建流水线(待更新)
二、windows安装ubuntu,并设置通过shell工具连接
1. 安装ubuntu
1.1 打开PowerShell或者cmd命令行窗口
1.2 输入安装命令
wsl --install
1.3 指定版本为wsl2
wsl --set-default-version 2
1.4 重启电脑,启动验证
打开PowerShell或者Cmd窗口,输入wsl命令
wsl
出现上图的画面,即表示ubuntu虚拟机启动成功。
注意:首次启动时,需要创建用户名及密码,根据提示创建即可。
1.5 其他补充
# 查看ubuntu系统版本号命令
lsb_release -a
2. 设置shell工具连接
2.1 卸载原有的ssh
# 卸载ssh
sudo apt-get remove --purge openssh-server
2.2 重新安装ssh
# 安装ssh
sudo apt-get install openssh-server
如果出现上述错误,需要更新源之后再进行安装。
# 更新源
sudo apt-get update
出现上述画面,说明更新源成功,再次执行上面的install命令即可,安装成功画面如下:
2.3 删除原配置文件
# 删除原配置文件
sudo rm /etc/ssh/ssh_config
注意:这一步删除,如果提示文件不存在,可以忽略。
2.4 重启ssh服务
# 重启ssh服务
sudo service ssh --full-restart
2.5 修改配置文件
# 编辑配置文件命令
sudo vim /etc/ssh/sshd_config
# 配置文件中需要修改的内容
Port 6666
ListenAddress 0.0.0.0
PasswordAuthentication yes
PermitRootLogin yes
2.6 再次执行2.4的命令,重启ssh
2.7 设置root密码
输入以下命令,按照提示输入两次密码即设置成功
# 设置root密码
sudo passwd root
2.8 使用shell工具连接
ip为本机:127.0.0.1
端口号为2.5设置的:6666
用户名:root
密码为2.7设置的
三、使用阿里源安装docker
因为网络原因,直接使用docker官方源可能无法安装,所以切换阿里源进行安装。
1. 查看Ubuntu的Codename
# 查看Ubuntu的Codename
lsb_release -a | grep Codename | awk '{print $2}'
注意:每个系统版本的codename是不同的,例如focal对应Ubuntu 20.04,jammy对应Ubuntu 22.04。这个codename在下面的配置中会用到。
2. 备份现有的sources.list文件
在修改之前,最好备份当前的sources.list
文件,以防万一需要恢复。可以使用以下命令:
# 备份命令
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
3. 修改sources.list文件
在打开的sources.list
文件中,你可以删除或注释掉原有的源(通过在行首添加#
),然后添加阿里云的源。阿里云的源通常如下所示(以Ubuntu 22.04为例,即Codename为jammy):
# 编辑命令
sudo vi /etc/apt/sources.list# 需要添加的阿里源,jammy为系统的codename,需要替换成步骤1查询出的codename
deb http://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse
# 源码仓库(可选)
deb-src http://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ jammy-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse
4. 更新软件包列表
# 更新软件包列表
sudo apt upgrade
5. 安装依赖包
# 安装依赖包
sudo apt install apt-transport-https ca-certificates curl gnupg lsb-release
6. 添加阿里云镜像源密钥
# 添加阿里云镜像源密钥
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
7. 添加阿里云镜像源
# 添加阿里云镜像源
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
8. 更新
# 更新
sudo apt update
9. 安装docker社区版
# 安装docker社区版
sudo apt install docker-ce docker-ce-cli containerd.io
10. 查看docker版本号
# 查看docker版本号
docker -v
四、docker配置镜像加速器
Docker镜像加速器是一种可以提供快速下载Docker镜像服务的工具或服务,它通过使用国内的镜像服务器来加速镜像的下载过程。通过配置镜像加速器,用户可以在使用Docker时更快速地获取所需的镜像,减少等待时间和提高工作效率。利用镜像加速器可以加速Docker镜像的拉取过程,避免受到网络延迟等因素影响,使得部署和管理应用程序更加便捷和高效。本人使用的是阿里云的镜像加速,阿里云在这方面给我的体验很不错。除了阿里云,华为云、腾讯云等国内云服务提供商也提供了类似的镜像加速服务,用户可以根据个人喜好和需求选择适合自己的镜像加速器。
登录阿里云,搜索“容器镜像服务”,找到镜像加速器,复制自己账号对应的地址,根据自身的系统(ubuntu/centOS/windows/Mac)找到对应的配置文件,参照下面的截图配置即可。
五、docker配置私有harbor
docker的配置文件为:/etc/docker/daemon.json,文件格式为json,首次安装完成后,可能没有该文件,创建即可。将国内的镜像仓库地址(包括镜像加速器地址)配置在"registry-mirrors"中,将内网的harbor地址配置在 "insecure-registries"中即可。
六、Windows11系统配置WSL2网络使它支持LAN访问
在wsl虚拟机中部署docker服务,在本机通过"localhost:port"可以访问,但使用"IP:port"不能访问,在同局域网下的其他设备上也无法访问。本文通过Windows端口映射WSL2里面的端口到Windows本地(当然Windows也得配全地址)的方式实现可以互相访问。
windows11后续又给出了“镜像”的网络连接方式,不过对系统版本是有要求的,博主未进行测试。
# 以管理员身份运行cmd或者powershell窗口,执行以下命令
netsh interface portproxy add v4tov4 listenport=8080 listenaddress=0.0.0.0 connectport=8080 connectaddress=172.31.171.186
# 参数说明# 宿主机监听的端口
listenport=8080
# 映射的虚拟机端口
connectport=8080
# 虚拟机IP
connectaddress=172.31.171.186