1.谷粒商城学习笔记(P1-P27学习)

本文详细记录了谷粒商城的微服务环境搭建过程,包括Linux安装、Docker部署MySQL与Redis、配置maven、git以及创建微服务项目。还介绍了SpringCloud Alibaba的Nacos注册中心、配置中心的使用,会员服务远程调用优惠券的实现,以及Nacos的命名空间和分组、多数据集配置。最后,文章提到了SpringCloud Gateway的路由、鉴权等功能的配置。
摘要由CSDN通过智能技术生成

目录

1.系统架构

2.环境准备

21.安装Linux

2.2.安装docker

2.3.docker安装 mysql

2.4.docker安装 redis

2.5.配置maven

2.6.配置开发工具插件

2.7.安装配置 git

2.8.创建微服务项目

2.9.数据库初始化

2.10.下载管理台对应的代码

2.11.renren-generator

2.12.整合mybatis-plus

2.13.renren-generator 生成其它项目代码

3.springcloud Alibaba

3.1.nacos注册中心

3.2.会员远程调用优惠券 

3.3.Nacos配置中心

3.4.Naocs的命名空间和分组

3.5.Nacos配置多数据集

3.6.Gateway


1.系统架构

2.环境准备

21.安装Linux

1.VirtualBox: https://download.virtualbox.org/virtualbox/6.0.10/VirtualBox-6.0.10-132072-Win.exe

(一定要先安装这个)

2.安装 Vagrant

1).Vagrant 下载地址:

https://releases.hashicorp.com/vagrant/2.2.5/vagrant_2.2.5_x86_64.msi

https://www.vagrantup.com/downloads.html

2).Vagrant 安装后,cmd中执行下面命令,如果有提示则说明安装成功

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

 4).运行 vagrant up --provider=virtualbox(第一次用这个命令,并导入virtrualbox),以后用vagrant up 即可启动虚拟机(虚拟机处于已关闭状态,第二天重启可用这个命令)。系统 root 用户的密码都是 vagrant

5).vagrant 其他常用命令:
vagrant ssh:自动使用 vagrant 用户连接虚拟机。
vagrant upload source [destination] [name|id]:上传文件
exit:退出连接,也可以停止虚拟机的运行


6).默认虚拟机的 ip 地址不是固定 ip,开发不方便,需要修改 Vagrantfile
修改 Vagrantfile(路径C:\Users\Administrator)

7).修改 Vagrantfile 后,vagrant reload

8).本地和服务器互相ping 进行测试 

9).默认只允许 ssh 登录方式,为了后来操作方便,文件上传等,我们可以配置允许账号密码登录 

vagrant ssh 进去系统之后
vi /etc/ssh/sshd_config
#修改 PasswordAuthentication yes/no
#重启服务 service sshd restart

以后可以使用提供的 ssh 连接工具直接连接

注意:VirtualBox 会与包括但不限于如下软件冲突,需要卸载这些软件,然后重启电脑;冲突的软件:红蜘蛛,360,净网大师(有可能)等

10).修改 linux 的 yum 源

①备份原 yum 源
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
②使用新 yum 源
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

③替换参数

vi /etc/yum.repos.d/CentOS-Base.repo 
:%s/$releasever/7/ge 
:%s/http://mirrors.cloud.aliyuncs.com/http://mirrors.aliyun.com/ge
:wq

④生成缓存

yum clean all
yum makecache

2.2.安装docker

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

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

2.安装 Docker-CE

#安装必须的依赖
sudo yum install -y yum-utils \
device-mapper-persistent-data \
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

5.测试 docker 常用命令,注意切换到 root 用户下

https://docs.docker.com/engine/reference/commandline/docker/

#查看版本
docker -v 
#查看服务器上下载的镜像
sudo docker images
#停止容器
docker stop container id
#查看已经停止的容器
docker ps -a
#删除容器
docker rm /mysql
#删除镜像
docker rmi redis
#进入mysql容器内部
docker exec -it mysql /bin/bash

6.配置 docker 镜像加速

阿里云:控制台->左侧菜单->容器镜像服务ACR->镜像加速器

针对Docker 客户端版本大于 1.10.0 的用户,您可以通过修改 daemon 配置文件/etc/docker/daemon.json 来使用加速器(Docker hub 是国外网站,下载redis 等镜像比较慢,配置镜像加速后,可加快速度)

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://dshna99s.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

2.3.docker安装 mysql

1.下载镜像文件

sudo docker pull mysql:5.7

2.创建实例并启动,切换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

参数说明
-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 用户的密码
-d 以mysql:5.7 镜像后台运行

Navicat 连接不上请修改密码:

docker exec -it mysql bash
mysql -uroot -proot
alter user 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
flush privileges;

3.查看正在运行中的容器

docker ps

4.配置my.cnf
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

5.重启docker 镜像

docker restart mysql

注意:解决 MySQL 连接慢的问题
在配置文件中加入如下,并重启 mysql
[mysqld]
skip-name-resolve
解释:
skip-name-resolve:跳过域名解析

2.4.docker安装 redis

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值