出自尚硅谷雷丰阳老师的电商项目
谷粒商城
基于SpringBoot2.x、SpringCould 2.x、redis、docker、vue…
分布式
、微服务
、前后端分离
一个B2C模式的电商平台,向用户销售自营的商品
我这里用的是VM ware12安装了CentOS 7.8
宿主机和虚拟机互ping小坑
刚开始网络模式用的NAT模式,虚拟机可以ping通主机,主机ping不到虚拟机,然后百度了一通,跟着网上的操作,还原了网络默认设置,之后就发现ens33都没法启用了…
之后重新设置网络才可以,参考的文章为:https://www.cnblogs.com/aeolian/p/8882790.html
,这篇文章对虚拟机网络配置的介绍比较全,解决了我所遇到的问题。
强烈推荐使用docker搭建环境,简直方便的不行
我这里pull的是mysql 5.7
# 拉取镜像
docker pull mysql:5.7
# 运行mysql容器
docker run -p 3306:3306 --name mysql \ # 将容器的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
在/mydata/mysql/conf/创建my.conf配置文件,并进行配置
cd /mydata/mysql/conf/
touch my.conf
vim my.conf
# 配置内容如下
[client]
default-character-set=utf-8
[mysql]
default-character-set=utf-8
[mysqld]
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAME utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve
重新启动mysql容器,配置生效
用主机的navicat连接一下刚刚运行的数据,看看是否能连接正常
这里主机就填linux虚拟机的ip地址
,建议连接名也可以使用ip地址,方便管理
当测试链接出现连接成功时,则说明mysql环境搭建成功。
我这里pull的是redis 6.0
# 拉取镜像
docker pull redis:6.0.12
# 运行容器
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
同时要在/mydata/redis/conf/下创建redis.conf配置文件,并进行配置
mkdir -p /mydata/redis/conf
cd /mydata/redis/conf/
touch redis.conf
vim redis.conf
# 配置内容
appendonly yes
bind 0.0.0.0
protected-mode no
这里我只进行了最基本的配置,要想配置更多的内容,可以到redis官网找到相关的配置文件,进行下载修改替换该文件即可。具体地址:https://redis.io/topics/config
找到自己的版本进行下载修改
然后进行在主机测试redis容器运行情况
这里可以使用redis的可视化工具RedisDesktopManager
通过虚拟机ip及redis端口号进行测试
出现此弹窗则为环境配置成功。
# 此命令可以让redis随着docker的启动而自动启动,mysql也可以这样设置
docker update --restart=always myredis
pull最新版镜像
docker pull nacos/nacos-server
设置挂载目录,并对配置文件进行修改
mkdir -p /home/nacos/logs/ #新建logs目录
mkdir -p /home/nacos/init.d/
vim /home/nacos/init.d/custom.properties #修改配置文件
# 配置内容
server.contextPath=/nacos
server.servlet.contextPath=/nacos
server.port=8848
spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://xx.xx.xx.x:3306/nacos_devtest_prod?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.user=user
db.password=pass
nacos.cmdb.dumpTaskInterval=3600
nacos.cmdb.eventTaskInterval=10
nacos.cmdb.labelTaskInterval=300
nacos.cmdb.loadDataAtStart=false
management.metrics.export.elastic.enabled=false
management.metrics.export.influx.enabled=false
server.tomcat.accesslog.enabled=true
server.tomcat.accesslog.pattern=%h %l %u %t "%r" %s %b %D %{User-Agent}i
nacos.security.ignore.urls=/,/**/*.css,/**/*.js,/**/*.html,/**/*.map,/**/*.svg,/**/*.png,/**/*.ico,/console-fe/public/**,/v1/auth/login,/v1/console/health/**,/v1/cs/**,/v1/ns/**,/v1/cmdb/**,/actuator/**,/v1/console/server/**
nacos.naming.distro.taskDispatchThreadCount=1
nacos.naming.distro.taskDispatchPeriod=200
nacos.naming.distro.batchSyncKeyCount=1000
nacos.naming.distro.initDataRatio=0.9
nacos.naming.distro.syncRetryDelay=5000
nacos.naming.data.warmup=true
nacos.naming.expireInstance=true
启动容器
docker run -p 8848:8848 --name nacos -d \
--privileged=true \
--restart=always \
-e JVM_XMS=256m \
-e JVM_XMX=256m \
-e MODE=standalone \
-e PREFER_HOST_MODE=hostname \
-v /home/nacos/logs:/home/nacos/logs \
-v /home/nacos/init.d/custom.properties:/home/nacos/init.d/custom.properties \
nacos/nacos-server
可以通过http//虚拟机ip:80/nacos
,默认账户密码都是nacos进行访问
idea、maven、及webstorm
进入git bash窗口,输入以下命令
ssh-keygen -t rsa -C "[email protected]" # 获取ssh密钥,直接三次回车即可
查看密钥
cat ~/.ssh/id_rsa.pub
将密钥复制添加到码云中的ssh公钥中
进行测试
ssh -T [email protected]
若有successfully则配置成功
在码云中新建一个仓库
之后打开idea导入git项目,将仓库的地址输入即可导入
使用Spring Initializr
快速构建各个SpringBoot子模块,在各个模块中要选择Web和OpenFeign的依赖
在gzmall下复制一个pom.xml用来聚合各个模块
在gzmall下的.gitignore下忽略不需要的子文件
**/mvnw
**/mvnw.cmd
**/.mvn
**/target/
.idea
**/.gitignore
通过navivat远程连接mysql数据库,为各个微服务模块创建相应的数据库