virtualBox安装虚拟机并且安装docker以及在docker中安装redis和mysql
1.1、下载virtualBox
本次使用的是virtualBox,而不是使用的vmware,推荐安装virtualBox
官网地址:https://www.virtualbox.org/wiki/Downloads
下载完成之后一路安装即可
1.2、在virtualbox中安装linux系统
我们使用一个新的技术vagrant,只要我们安装了virtualBox,vagrant可以快速帮我们创建好一个虚拟机,
vagrant官方已经有好多的做好的镜像,vagrant就可以连接virtualBox 快速的从官方镜像中创建一个虚拟机
https://app.vagrantup.com/boxes/search
1.2.1、下载vagrant
官网地址https://www.vagrantup.com/
下载完成之后,点击安装即可,安装之后需要重启电脑,重启之后 打开命令行窗口,然后输入
vagrant命令 即可查看是否安装成功;
1.2.2、使用vagrant在virtualBox中创建一个虚拟机
打开镜像仓库 https://app.vagrantup.com/boxes/search 在其中找到centos/7
然后我们可以在命令行中输入vagrant init centos/7 即可下载
它只是在C:\Users\86153目录中创建了一个Vagrantfile文件
使用vagrant up 启动虚拟机
这个过程可能有点慢,完成之后
这个时候我们就可以吧这个命令行窗口停掉了,使用ctrl+c命令
然后输入vagrant ssh 我们就可以连接上虚拟机了,然后我们就可以输入Linux有关的命令了
可以使用exit命令退出
我们怎样停止虚拟机呢?
右键-退出,然后里面有个一个正常关机
等下一次我们在启动的时候,有两种方式:
1、可以打开命令行窗口,使用vagrant up 命令即可
2、或者在界面 右键 启动 正常启动 即可
1.2.3、设置虚拟机网络
VirtualBox默认用的是网络地址转换,端口转发的形式;这种形式不太方便;
比如mysql的端口号是3306,我们设置的是对应的windows的3333 也就是访问windows的3333端口就能访问到virtualBox中的mysql数据库
下面我们将虚拟机的地址设置为固定的
我们只需要修改Vagrantfile文件即可
使用命令行窗口查看virtualbox的ip
这个时候我们设置的地址就需要是192.168.56.xxx
在Vagrantfile中修改
改完这个配置之后,然后重启虚拟机(可以打开命令行窗口 输入vagrant reload 即可)
然后使用vagrant ssh 连接上虚拟机 输入 ip addr
可以看到ip地址已经改成我们设置的了
测试主机和虚拟机的ip 是否互通即可;是可以相互通的
1.2.4、安装docker
Docker是虚拟化容器技术,docker基于镜像,可以秒级启动各种容器,每一中容器都是一种完整的运行环境,容器之间相互隔离
Docker可以从镜像仓库中拉取镜像,然后基于镜像启动容器,每一个容器都是相互独立的
卸载旧版本
设置仓库
安装所需的软件包。yum-utils 提供了 yum-config-manager ,并且 device mapper 存储驱动程序需要 device-mapper-persistent-data 和 lvm2。
使用以下命令来设置稳定的仓库。
安装 Docker Engine-Community
启动docker
设置docker的开机自启动
为docker设置镜像加速
登录阿里云 点击控制台,找到镜像服务
执行如下命令
1.3、docker安装mysql数据库
https://registry.hub.docker.com/_/mysql?tab=tags&page=1&ordering=last_updated
我们以5.7为例,执行命令 sudo docker pull mysql:5.7
使用docker images 命令查看镜像
创建实例并启动
使用docker ps 可以查看运行中的镜像
然后使用navicat客户端连接即可;
每一个容器都相当于是一个完整的Linux
我们可以使用命令 sudo docker exec -it mysql /bin/bash 进入mysql的里面 或者写容器的id也一样
可以看到他就是一个Linux的目录
查看mysql 的安装位置
修改mysql的配置 设置mysql的编码等信息
vi /mydata/mysql/conf/my.cnf 这个时候my.cnf是没有的,我们直接编辑即可
重启mysql
sudo docker restart mysql
设置mysql 开机随着虚拟机和docker的启动而启动
使用命令 docker update --restart=always 容器id
1.4、docker安装redis
使用命令docker pull redis 我们下载的是最新版的;
创建实例并启动
首先 mkdir -p /mydata/redis/conf
touch /mydata/redis/conf/redis.conf
运行如下命令
测试redis
执行sudo docker exec -it redis redis-cli
修改外部的 /mydata/redis/conf 中的redis.conf文件 进行持久化操作,这样redis再重启的时候,里面保存的数据是可以再次查询到的
如果不设置,则redis再次启动的时候 之前存放的数据就都没有了
重启redis
sudo docker restart redis
设置redis开机随着虚拟机和docker的启动而启动
使用命令 docker update --restart=always 容器id
1.5、使用xshell连接虚拟机
当我们使用Vgrant 安装完成虚拟机之后,我们可以使用vagrant ssh 连接上
然后我们可以切换到root用户,然后执行vi /etc/ssh/sshd_config 命令,
将其中的PasswordAuthentication 改为yes
然后使用passwd修改密码
使用systemctl restart sshd重启密码服务(如果这个命令不行,则可以试试 service sshd restart)
使用ip add查看ip即可使用远程工具登录root用户
完