1. 项目简介
1.1 项目背景
1.2 微服务架构图
1.3 微服务划分图
1.4 项目技术&特色
2. 微服务基础概念
2.1 微服务
2.2 集群&分布式&节点
2.3 远程调用
2.4 负载均衡
2.5 服务注册/发现&注册中心
2.6 配置中心
2.7 服务熔断&服务降级
2.8 API网关
3. 环境搭建
3.1 安装虚拟机
VirtualBox推荐使用Vagrant快速搭建虚拟机, 这样就不需要去网上下载镜像并安装等一系列麻烦工作了
vagrant2.2.6与VirtualBox6.1版本不兼容导致vagrant up报错问题解决方案
https://blog.csdn.net/daxiang52/article/details/103518589
解决vagrant up时下载慢问题
https://blog.csdn.net/padawan75/article/details/107520914
如上图所示, 改成192.168.56.xx (xx可以任意指定,但是不可以与上面图片上的一致)
使用vagrant reload 重新启动虚拟机
现在可以尝试宿主机ping 虚拟机 以及 虚拟机ping宿主机了, 都ping通即可
3.2 虚拟机中安装Docker
3.2.1 Docker介绍
3.2.2 安装步骤
https://docs.docker.com/engine/install/centos/
- 卸载old Docker
$ sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
- 设置docker存储库
$ sudo yum install -y yum-utils
# 设置阿里的镜像源
$ sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
- 安装docker引擎
$ sudo yum install docker-ce docker-ce-cli containerd.io
4. 启动docker
sudo systemctl start docker
判断启动是否成功
sudo systemctl status docker
5. 检查docker 启动是否成功
sudo docker images
查看镜像列表
6. 设置docker 开机自启
sudo systemctl enable docker
7. 配置阿里云镜像加速
访问aliyun并登陆
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://zwhd4nsg.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
3.3 docker 安装mysql
- 拉取mysql镜像
sudo docker pull mysql:5.7
- 查看拉取的镜像
sudo docker images
- 容器启动
vagrant 切换root用户su root
密码 vagrant
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
-d:表示以后台方式启动
docker exec -it mysql /bin/bash
进入容器内部 使用Ctrl + P + Q不停止退出
- 修改配置文件
然后重启mysql容器docker restart mysql
3.4 docker 安装redis
docker pull redis
拉取镜像
运行镜像
docker run -p 6379:6379 --name redis -v /mydata/data/redis/data:/data -v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf -d redis redis-server /etc/redis/redis.conf
检查容器是否启动d