简介 ■ VirtualBox 是一款开源虚拟机软件。VirtualBox 是由德国 Innotek 公司开发

■ 特点: a. 免费 b. 轻量级 c. 虚拟硬盘快照 d. 支持多种网络接入模式

NAT网络 这种模式类似于你用于配置路由器的NAT模式。如果你对多个虚拟机使用NAT网络模式,它们可以通过网络相互通信。虚拟机可以访问物理网络中的其他主机,也可以访问外部网络,包括互联网。任何来自外部网络的机器以及宿主机所连接的物理局域网的机器都不能访问被配置为使用NAT网络模式的虚拟机。

■ 安装

下载安装virtualBox 要开启电脑CPU的虚拟化

下载安装vagrant vagrant是一个操作虚拟机的工具。比如说想创建一个centos环境的虚拟机,不需要安装系统这么麻烦,通过vagrant可以快速创建 ■ https://app.vagrantup.com/boxes/search vagrant官方镜像仓库 ■ https://www.vagrantup.com/downloads.html vagrant下载 ■ ● 打开window cmd窗口,运行vagrant init centos/7,即可初始化一个centos7系统 ● 运行vagrant up 即可启动虚拟机,系统root用户的密码是vagrant,也可以使用

修改虚拟机的IP地址 ■ 在用户目录下找到Vagrantfile,打开文件,将配置行config.vm.network "private_network", ip: "192.168.33.10"注释去掉, ■ Cmd命令中,使用ipconfig查看vagrant网卡ip ■ 根据vagrant网卡地址,将config.vm.network "private_network", ip: "192.168.33.10"地址修改到同一网段 安装过程中错误 在vagrant安装centos镜像时,如果下载不了,请修改初始化下载地址,命令为: vagrant init centos7 https://mirrors.ustc.edu.cn/centos-cloud/centos/7/vagrant/x86_64/images/CentOS-7.box 如果未修改CPU虚拟化,VirtualBox中只允许安装32位镜像

安装Docker Docker镜像仓库 https://registry.hub.docker.com/ Docker官网 https://docs.docker.com 安装步骤 ■ Uninstall old versionsr(卸载之前的dockers) $ sudo yum remove docker
docker-client
docker-client-latest
docker-common
docker-latest
docker-latest-logrotate
docker-logrotate
docker-engine ■ Set up the repository(设置依赖地址) $ sudo yum install -y yum-utils $ sudo yum-config-manager
--add-repo
https://download.docker.com/linux/centos/docker-ce.repo ■ Install Docker Engine(安装docker) $ sudo yum install docker-ce docker-ce-cli containerd.io ■ Start Docker(启动docker) $ sudo systemctl start docker

■ 开机自启 $ sudo systemctl enable docker docker配置镜像加速 ■ 镜像加速推荐阿里云 ■ 登录阿里云 https://www.aliyun.com/ ■ 登录后点击控制台---产品服务---容器镜像服务---镜像加速器

■ 执行命令(参考实际配置) sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["https://9m2pl11r.mirror.aliyuncs.com"] } EOF sudo systemctl daemon-reload sudo systemctl restart docker ■

docker常用命令 命令 说明 sudo docker images 检查docker容器 sudo systemctl daemon-reload 重启docker后台线程 sudo systemctl restart docker 重启docker服务 sudo docker pulll mysql:5.7 从镜像库中下载mysql5.7版本 docker ps 查看启动的容器 docker ps -a 查看未启动的镜像 docker images 查看已下载的镜像 docker logs xxx 查看镜像日志,xxx为容器名或id docker start xxx 启动容器,xxx为容器名或id docker update mysql --restart=always 设置容器为自动启动 docker rm 容器ID 删除容器 docker exec -it mysql /bin/bash 进入docker中的mysql容器,mysql也可是id docker exec -it redis redis-cli 进入redis容器命令行 docker rmi rocketmqinc/rocketmq 删除镜像文件

安装mysql 下载mysql镜像并安装 ■ 在docker官方仓库中下载mysql,使用命令docker pull命令 $sudo docker pull mysql:5.7 ■ 创建实例并启动 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/log:/var/log/mysql: 将日志文件夹挂载到主机 -v /mydata/mysql/data:/var/lib/mysql\ 将数据文件夹挂载到主机 -v /mydata/mysql/conf:/etc/mysql:将配置文件夹挂载到主机 -e MYSQL_ROOT_PASSWORD=root:初始化root用户的密码 -d mysql:5.7: 使用哪个版本的mysql启动的容器 安装完成后查看运行中的容器 ■ $ docker ps Mysql配置 vi /mydata/mysql/conf/my.cnf [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 ■ 修改完成后:wq保存退出 ■ 重启docker中的mysql $ docker restart mysql 设置容器中的mysql自动启动 $ sudo docker update mysql --restart=always 关闭容器自动启动 $ sudo docker update mysql --restart=no