新春第一篇,Windows搭建centOS虚拟机,安装Docker环境
开年第一天,公司空调也没开,楼下饭馆没开门,经历了一上午的饥寒交迫,我太难了
我最近趁着假期,想系统的学习下微服务开发,在此分享下我的学习笔记,鞭策自己的同时,也希望能帮到大家
本篇文章主要介绍在Windows下使用vagrant搭建centOS虚拟机,并安装Docker,比较基础,但尽量详细,详细步骤如下
VirtualBox下载安装
Vagrant的下载安装
安装centos镜像
修改虚拟机端口映射
Docker的安装与镜像加速器配置
VirtualBox下载安装
VirtualBox是一款开源虚拟机软件,
下载后进行安装,建议安装至非系统盘
Vagrant的下载安装
普通安装linux虚拟机太麻烦,可以利用vagrant可以帮助我们快速地创建一个虚拟机。
vagrant官方有一个镜像仓库,有好多的已经做好的镜像,我们可以用vagrant连接VirtualBox快速的创建一个虚拟机
官网:https://www.vagrantup.com/
官方镜像仓库:https://app.vagrantup.com/boxes/search
安装后重启系统。cmd中输入vagrant有版本代表成功了。
安装centos镜像
vagrant init 命令可初始化一个镜像,命令后面对应的就是镜像仓库中要安装镜像的名称
输入vagrant init centos/7,即可初始化一个centos7系统。
执行命令后,在当前目录会生成一个Vagrantfile文件(注意这个命令在哪个目录下执行的,他的Vagrantfile就生成在哪里)
然后执行vagrant up启动虚拟机环境。这个过程包含下载和初始化镜像文件
启动后出现default folder:/cygdrive/c/User/… =>/vagrant。然后ctrl+c退出
如图,vagrant会自动创建好ssh的账号,并启动虚拟机
可以在VirtualBox中看到,虚拟机已启动
打开cnd窗口,使用vagrant ssh 就会连上虚拟机。可以使用exit退出
也可以用 whoami 查看当前用户信息
如果要关闭虚拟机,可以在VirtualBox窗口关闭虚拟机
修改虚拟机端口映射
虚拟机装好了,但假如我们要访问虚拟机中的软件怎么办呢,比如mysql默认端口3306,我们如何访问虚拟机中的mysql呢,有两种方法
1、在VirtualBox中,虚拟机-设置-网络设置-端口转发,可以设置系统的端口转发,比如将Windows的3333端口转发到虚拟机的3306端口
2.修改虚拟机网卡IP
但这个IP具体改成什么呢,这就需要在windows的ipconfig中查到vitualbox的虚拟网卡ip,然后更改下最后一个数字就行(不能是1)
如上图,我查到虚拟机网卡IP为192.168.56.1,那么我将虚拟机IP固定为192.168.56.6
首先,在虚拟机镜像安装目录找到并打开Vagrantfile文件,修改其中的config.vm.network "private_network",ip:"192.168.56.10"列,将IP修改为我们想要的,解开注释,保存后重启虚拟机(使用vagrant reload命令可以重启虚拟机)
Docker安装与镜像加速
官网 :https://www.docker.com/
Docker简单介绍
虚拟化容器技术。Docker基于镜像,可以秒级启动各种容器。每一种容器都是一个完整的运行环境,容器之间互相隔离
我的理解是,各个软件,比如mysql,将软件以及其运行环境做成镜像,Docker提供一个容器,基于这个镜像,可以使mysql及运行环境快速的在这个容器中跑起来
1.Docker安装
执行以下命令,注意,因为vagrant用户没有root权限,所以需要使用sudo来获取管理员权限执行这些命令
#卸载旧版本
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
sudo yum install -y yum-utils
# 配置镜像
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
# 安装Docker引擎、客户端以及容器
sudo yum install docker-ce docker-ce-cli containerd.io
# 依次确认
# 启动Docker
sudo systemctl start docker
# 设置开机自启动
sudo systemctl enable docker
启动后我们可以使用 sudo docker images 命令查看Docker下载的镜像列表
2.配置镜像加速
因为很多软件镜像都是海外的,下载比较慢,所以我们配置一个镜像加速器,我这里选择使用阿里云
登录阿里云,进入控制台,在左侧菜单栏找到容器镜像服务
找到镜像加速器,选择我们对应的centOS,执行提供的命令
这样我们就配置好了镜像加速,今后下载镜像,我们就会从阿里云来下载镜像,下载速度会快很多