(二)搭建虚拟机环境

搭建虚拟机环境

本来想用阿里云来做的,但是阿里云续费太贵了,避免阿里云过期后需要重新配置环境,这里用

VirtualBox来搭建虚拟环境。

下载VirtualBox

下载&安装 VirtualBox https://www.virtualbox.org/,下载完成后,重启电脑,进入bios开启cpu虚拟化,

image-20201229063147598

下载&安装Vagrant

vagrant是一个工具,用于创建和部署虚拟化开发环境的。Vagrant它底层支持VirtualBoxVMware甚至AWS**作为虚拟机系统

拿VirtualBox举例,VirtualBox会开放一个创建虚拟机的接口,Vagrant会利用这个接口创建虚拟机,并且通过Vagrant来管理,配置和自动安装虚拟机。

https://app.vagrantup.com/boxes/search Vagrant 官方镜像仓库

https://www.vagrantup.com/downloads.html Vagrant 下载

检验vagrant是否安装成功

image-20201229065112093

安装vagrant后重启系统,进入cmd模式输入vagrant,有以上提示既说明vagrant安装成功。

初始化centos7环境

打开 window cmd 窗口,运行 Vagrant init centos/7,即可初始化一个 centos7 系统。

运行 vagrant up 即可启动虚拟机。系统 root 用户的密码是 vagrant。(注意这个命令在哪个目录下执行的,他的Vagrantfile就生成在哪里)。

启动后出现default folder:/cygdrive/c/User/… =>/vagrant。然后ctrl+c退出

前面的页面中有ssh账号信息。

vagrant ssh就会连上虚拟机。可以使用exit退出。

下次使用也可以直接vagrant up直接启动,但要确保当前目录在C:/用户/ 文件夹下,他下面有一个Vagrantfile,不过我们也可以配置环境变量。

启动后再次vagrant ssh连上即可

配置虚拟机IP

1.打开cmd命令窗口,出入ipconfig查看虚拟网卡的ip地址

image-20201229213129977

2.修改Vagrantfile

在Vagrantfile文件设置跟虚拟网卡在同一网段的ip地址:config.vm.network "private_network", ip: "192.168.56.10"

3.在cmd命令窗口使用vavgrant reload重启虚拟机

docker安装

Docker 安装文档:https://docs.docker.com/install/linux/docker-ce/centos/

1、卸载系统之前的 docker

sudo yum remove docker \ 
docker-client \ 
docker-client-latest \ 
docker-common \ 
docker-latest \ 
docker-latest-logrotate \ 
docker-logrotate \ 
docker-engine 

2、安装 Docker-CE

安装必须的依赖

sudo yum install -y yum-utils \ 

device-mapper-persistent-data \ 
docker
lvm2 

设置 docker repo 的 yum 位置

sudo yum-config-manager \ 

--add-repo \ 

https://download.docker.com/linux/centos/docker-ce.repo 

安装 docker,以及 docker-cli

sudo yum install docker-ce docker-ce-cli containerd.io 

3、启动 docker

sudo systemctl start docker

4、设置 docker 开机自启

sudo systemctl enable docker

配置阿里云镜像加速

由于docker hub是国外的网站,拉取镜像十分缓慢,所以配置阿里云镜像加速,具体做法可参考网上资料,这里不列出来。

docker安装 mysql

1.下载镜像文件

docker pull mysql:5.7

2.创建实例并启动

docker run -p 3306:3306 --name mysql \ -v /mydata/mysql/log:/var/log/mysql \ -v /mydata/mysql/data:/var/lib/mysql \ -v /mydata/mysql/conf:/etc/mysql \ -e MYSQL_ROOT_PASSWORD=root \ -d mysql:5.7

参数说明

-p 3306:3306:将容器的 3306 端口映射到主机的 3306 端口

-v /mydata/mysql/conf:/etc/mysql:将配置文件夹挂载到主机

-v /mydata/mysql/log:/var/log/mysql:将日志文件夹挂载到主机

-v /mydata/mysql/data:/var/lib/mysql/:将配置文件夹挂载到主机

-e MYSQL_ROOT_PASSWORD=root:初始化 root 用户的密码

3.mysql配置

因为启动docker的mysql时指定了容器卷,在linux主机上配置vi /mydata/mysql/conf/my.cnf既可修改mysql配置

[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve

重启mysql docker restart mysql

通过容器的mysql命令行工具连接

docker exec -it mysql mysql -uroot -proot

4.进入容器文件系统

docker exec -it mysql /bin/bash

docker安装redis

1.下载镜像文件

不写标签默认拉去最新的

docker pull redis

2.创建实例并启动

如果直接挂载的话docker会以为挂载的是一个目录,所以我们先创建一个文件然后再挂载

mkdir -p /mydata/redis/conf
touch /mydata/redis/conf/redis.conf

docker pull redis

docker run -p 6379:6379 --name redis \
-v /mydata/redis/data:/data \
-v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf \
-d redis redis-server /etc/redis/redis.conf

# 直接进去redis客户端。
docker exec -it redis redis-cli

默认是不持久化的。在配置文件中输入appendonly yes,就可以aof持久化了

vim /mydata/redis/conf/redis.conf
# 插入下面内容
appendonly yes
保存

docker restart redis

posted on 2020-12-30 07:12  six、hc  阅读(237)  评论(0编辑  收藏  举报

导航